[Java]class, object, instance 상호 관계.
💡 class, object, instance
class, object, instance 모두 다 객체를 부르는 용어이다.
객체가 생성되는 과정에서 class 와 object와 instance 가 어떤 관계가 있는지 살펴보자.
🔍 1. class
책이라는 객체가 있다고 하면 이러한 책을 프로그램을 설계해야 다룰 수 있다.
이러한 객체를 생성하려면 설계를 해야하고 그 설계도가 class 이다.
객체의 이름을 정하고 객체의 상태 정보를 정한다
객체는 수많은 정보들이 있지만 이들 중 필요한 정보만은 정해서 modeling 해준다.
🔍 2. object
객체의 형태와 객체(변수)를 선언해준다. b1,b2,b3는 변수이고 객체를 담는 변수이기 때문에 객체(변수)이다.
b1,b2,b3는 아직 뭘 가르키지 않는다. b1,b2,b3가 어떤책인지 우리는 말할 수 없다. 그냥 책 객체이다.
만약 객체를 생성하기 전에 어떤 책인지 구체적인 객체를 가르키지 않으면 추상적인 존재이다.
그래서 객체(변수)라고 object 라고 부른다.
🔍 3. instance
객체가 어떠한 특정 객체를 메모리에 생성하고 그 내부에 정보를 저장 할 때(값을 가르킬 때)
b1이 객체이지만 뭔가 구체적인 대상물을 가르키게 되면 구별이 된다.
그때는 객체(object)라고 부르지 않고 인스턴스(instance) 라고 부른다.
어떠한 책이라는 타입을 갖은 객체가 있는데 우리는 어떤 책인지 모른다.
하지만 객체 형태로 메모리에 생성하고 그 정보 파이썬 책, 자바 책, 알고리즘 책 등등
특정한 대상을 지정하면 더 이상 객체라고 부르지 않고 하나의 인스턴스 라고 부른다.
Java 관련 개념을 알려주실 때 그 내부 동작이 어떻게 구현되는지 자세하게 알수 있는 강의입니다.
출처: Java TPC (생각하고, 표현하고, 코딩하고) 대시보드 - 인프런 | 강의 (inflearn.com)