클래스, 객체 , 인스턴스의 개념
1. Object
클래스를 사용할 수 있게 실체화 한 것
2. Class
자바에서 클래스(class)란 객체를 정의하는 틀 또는 설계도와 같은 의미로 사용됩니다.
자바에서는 이러한 설계도인 클래스를 가지고, 여러 객체를 생성하여 사용하게 됩니다.
클래스는 객체의 상태를 나타내는 필드(field)와 객체의 행동을 나타내는 메소드(method)로 구성됩니다.
즉, 필드(field)란 클래스에 포함된 변수(variable)를 의미합니다.
또한, 메소드(method)란 어떠한 특정 작업을 수행하기 위한 명령문의 집합이라 할 수 있습니다.
test 라는 class를 생성한 후,
Person 이라는 객체를 생성해서 호출한다. ( 여기서 생성한 객체가 Instance 라고 보시면 됩니다. )
쉽게 말하면, "사람"이라는 클래스를 구성하는 건 "이름" , "나이" 라는 객체로 이루어져 있습니다.
3. Instance
자바에서 클래스를 사용하기 위해서는 우선 해당 클래스 타입의 객체(object)를 선언해야 합니다.
이렇게 클래스로부터 객체를 선언하는 과정을 클래스의 인스턴스 화라고 합니다.
또한, 이렇게 선언된 해당 클래스 타입의 객체를 인스턴스(instance)라고 합니다.
즉, 인스턴스란 메모리에 할당된 객체를 의미합니다.
자바에서는 하나의 클래스로부터 여러 개의 인스턴스를 생성할 수 있습니다.
이렇게 생성된 인스턴스는 독립된 메모리 공간에 저장된 자신만의 필드를 가질 수 있습니다.
하지만 해당 클래스의 모든 메소드(method)는 해당 클래스에서 생성된 모든 인스턴스가 공유하게 됩니다.
'IT Diary > # JAVA' 카테고리의 다른 글
Ioc 와 di (0) | 2021.08.10 |
---|---|
[ JAVA ] 다형성과 추상화 (0) | 2021.08.03 |
[ JAVA ] 캡슐화란? (0) | 2021.07.11 |
[ JAVA ] try catch 문 (0) | 2021.07.09 |
[ JAVA ] this 와 this() (0) | 2021.03.14 |