✔️ 클래스는 설계도, 객체는 설계도로 구현한 모든 대상을 의미한다.
✔️ 클래스의 타입으로 선언되었을 때 객체, 그 객체가 메모리에 할당되어 실제 사용될 때 인스턴스라고 부른다.
class
- 객체를 만들어 내기 위한 설계도 혹은 틀, 연관되어 있는 변수와 메서드의 집합을 말한다.
object
- 소프트웨어 세계에 구현할 대상이자 클래스에 선언된 모양 그대로 생성된 실체를 말한다.
- 클래스의 인스턴스라고도 부르며 객체는 모든 인스턴스를 대표하는 포괄적인 의미를 갖는다.
- OOP의 관점에서, 클래스의 타이븡로 선언되었을 때 객체라고 부른다.
instance
- 객체를 소프트웨어에 실체화하면 그것을 인스턴스라고 부른다.
- 인스턴스는 객체에 포함된다고 볼 수 있다.
- OOP의 관점에서, 객체가 메모리에 할당되어 실제 사용될 대 인스턴스라고 부른다.
- 추상적인 개념과 구체적인 객체 사이의 관계에 초점을 맞출 경우에 사용한다.
- 인스턴스는 어떤 원본(추상적인 개념)으로부터 생성된 복제본을 의미한다.
public class Animal{
private String name;
}
public class Main{
public static void main(String[] args){
Animal gaori;
ako = new Animal();
}
}