[Java] 클래스, 객체, 인스턴스의 차이

코아·2024년 7월 7일

처음 공부를 시작했을 때는 이 셋의 개념에 대해 헷갈렸었습니다. 이를 위하여 세가지의 개념에 대해 간단히 정리해보고자 합니다.

Book b = new Book();

위와 같은 코드가 있다고 할 때,

  • 클래스: 설계도, 설계도를 가지고 실제로 만든 것: 객체 or 인스턴스
  • 객체(인스턴스)를 사용하려면 특별한 이름으로 참조해야함 -> 참조변수(b)
  • new Book()은 인스턴스 생성. 인스턴스를 Heap 메모리에 만들라는 의미
  • 맨 앞에 Book은 클래스 타입을 의미

객체와 인스턴스는 혼용되어 사용하지만 차이를 말하자면,
객체는 개념적인 의미인 것이고, 인스턴스는 클래스를 기반으로 실제로 생성된 데이터를 갖고 있는 객체를 나타냅니다.

profile
https://ldyble.tistory.com/ 에서 블로그 이전하였습니다.

0개의 댓글