카테고리 없음

[JAVA] 클래스 / 객체 / 인스턴스 개념 및 차이

데브승찬 2024. 8. 21. 17:58

클래스 / 객체 / 인스턴스의 간단하고 쉽게 정리한 개념 및 차이

 

클래스 (class) 

  • 변수와 매서드를 가지고 있는 집합이다.
  • 객체를 생성하기 위한 틀이다.
  • 자바 = 클래스들의 모임이다.
  • 쉽게 붕어빵의 틀이라고 비유한다.

객체 (object)

  • 물리적으로 존재하거나 추상적으로 생각할 수 있는 것 중에서 자신의 속성을 가지고 있고, 
    다른 것과 식별 가능한 것을 말한다.
  • 쉽게 붕어빵이라고 비유한다.

인스턴스 (instance)

  • 쉽게 클래스가 붕어빵 틀이라면, 그 틀 (class) 을 통해 생성된 객체 (붕어빵) 하나하나를 해당 클래스의 인스턴스라고 한다.
  • 클래스의 소속된 개별적인 객체를 말한다.
// 클래스
public class Chicken {
 ...
}

public Main {
 public static void main(String[] args) {
  Chicken leg; // 객체
  
  //인스턴스화
  leg = Chicken(); // leg 는 Chicken 클래스의 인스턴스

 

클래스 (class) 와 객체 (object) 의 차이

  • 클래스는 '설계도',  객체는 '설계도로 구현한 모든 대상'을 의미한다.

 

객체 (object) 와 인스턴스 (instance) 의 차이

  • 클래스의 타입으로 선언 되었을 때 객체라고 부르고 그 객체가 메모리에 할당 되어 사용될 때 인스턴스라고 부른다.
  • 객체는 '실체', 인스턴스는 '관계'에 초첨을 맞춘다.