'오브젝트'에 해당되는 글 1건

  1. 2018.07.16 class와 객체

class와 객체

JAVA 2018. 7. 16. 16:48

 

 Class란?

하나의 클래스로부터 여러개의 객체를 생성하기 위해 사용하는 틀


사물의 상태 및 특성, 그에 관련된 기능을 정리하여 프로그램으로 표현하기 위해 사용하는 개념이다.

클래스는 선언만으로는 사용할 수 없고 사용하려면 객체(인스턴스)를 생성해야한다.

 

 

 class 선언법

 

 class 클래스 명
{
  형(type)명 필드(field)명 ;   //클래스에는 필드가 있다.
  ...

  리턴 값의 형(type) 메소드(method) 명(인수 목록)   //클래스에는 메서드가 있다.
  {
     문장;
     ... return 식 (expression);
  }
}

 


선언 :

class 클래스 이름{필드/메서드}
클래스 이름의 첫글자는 반드시 대문자로 정의하고

 

선언된 필드(속성)과 메서드(기능)를 class의 멤버라 부른다.

 

 

 class와 객체의 차이는 무엇인가?

 

위에서 언급했듯이 class는 객체를 생성하기 위한 하나의 틀이고

객체는 class라는 틀을 이용하여 만든 것이다.

 

예시 : 붕어빵 틀 = class
        틀에 뽑아낸 붕어빵 = 객체

 

 



 객체(object) 란?

 

데이터(특성)와 그 데이터에 관련되는 동작(절차, 방법, 기능 : 로직)이 결합된 것

 

객체는 속성+기능으로 구성하고 코드 상에서 변수로 표현된다.

 

 

1. 객체를 담을 변수를 선언하기
 선언한 클래스를 사용하여 객체를 다루는 변수를 선언하라는 뜻.
2. 객체를 만들고, 그 변수에 접근하기.

 

 

 선언법

클래스명  변수명;

변수명 = new 클래스명();

 

class Car              // Car 클래스 선언
{
   int num;
   double gas;
}

//자동차 클래스의 객체 생성하기

class Samplel
{
  public static void main(String[] args){
 
 Car car1;              // Car형 변수를 선언
 car1 = new Car();   // 객체를 생성하여 대입
 ....
  }

 


요약 선언법
Car car1 = new Car();
[객체를 담은 변수 선언]  =  [객체를 생성하고 변수에 대입]

클래스명 변수명 = new 클래스명();

 

 

* 예시의 변수 car1은 '객체 그 자체'가 아니다.
클래스형 변수는 객체가 생성되어 있는 '위치'를 가르킨다.
이러한 변수를 참조형 변수라 부른다.


참조형 변수는 클래스 변수 외에도 배열형 변수와 인터페이스형 변수가 있다.

 

 

 

 객체(Object)와 인스턴스(Instance)의 차이

 

클래스로부터 객체를 만드는 과정을 클래스의 인스턴스화라고 하며,

어떤 클래스로부터 만들어진 객체를 그 클래스의 인스턴스라고 한다.


결국 인스턴스는 객체와 같은 의미이지만, 객체는 모든 인스턴스를 대표하는 포괄적인 의미를 갖고 있으며,

인스턴스는 어떤 클래스로부터 만들어진 것인지를 강조하는 보다 구체적인 의미를 갖고 있다.

 

 

 

 한 줄 정리

 

class = 사물의 일반적인 상태와 특성 및 기능을 정리한 것

필드 = 사물의 '상태 및 특성'을 클래스에 표현한 것

메소드 = 사물의 '기능'을 표현한 것

멤버 = class에 선언된 필드와 메소드

 

 

 

참조 문헌 및 링크

http://nukestorm.tistory.com/79

 

자바의 정석

그림으로 배우는 Java Programming basic

'JAVA' 카테고리의 다른 글

method  (0) 2018.07.17
Posted by Resian
,