본문 바로가기
☕ Java 웹 프로그래밍/Java

Java | 클래스, 객체, 인스턴스, 인스턴스화

by 일단연 2023. 5. 1.

* Java의 클래스와 객체, 인스턴스에 대해 개념이 헷갈려 정리해봤습니다.

 

 클래스 

  • 객체를 생성하는 틀, 객체를 만들기 위한 설계도
  • 클래스 만들기: class 클래스명 { };

 

 객체 

  • 속성(상태)과 기능(동작)의 집합
  • 객체의 멤버: 속성과 기능
    • 속성(property): 멤버변수(member variable), 특성(attribute), 필드(field), 상태(state)
    • 기능(function): 메소드(method), 행위(behavior), 함수(function)

 

 인스턴스 

  • 객체를 생성해 JVM이 관리하는 메모리에 적재된 것
  • 메모리에 만들어진 객체
  • 어떤 클래스로부터 만들어진 객체를 해당 클래스의 인스턴스라고 함
  • 특징: 해당 클래스의 메소드를 모두 상속받음

 

 객체와 인스턴스 

  • 객체: 인스턴스를 포함한 의미 (포괄적)
  • 인스턴스: 어떤 클래스에 속하는 각각의 객체
  • 인스턴스화: 클래스로부터 객체를 만드는 과정

 

 인스턴스의 선언과 생성 

1.  선언 후 생성

클래스명 변수명; //클래스의 객체를 참조하기 위한 참조변수 선언
변수명 = new 클래스명( ); 
//new연산자로 클래스의 객체를 생성한 후(인스턴스화한 후) 그 인스턴스의 주소를 참조변수에 저장

2.  선언과 생성을 동시에

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

 

 최종 정리 

  • 붕어빵 틀 = Class
  • 붕어빵 = 객체(Object)
  • 붕어빵을 굽다 = 인스턴스(Instance)화하다
  • 만들어진 각각의 붕어빵 = 인스턴스(Instance)
붕어빵 틀 > class 이름
밀가루 반죽 팥 > 멤버변수(member variable)
굽다( ) > 멤버메소드(member method)