반응형
클래스, 객체, 인스턴스의 정의
클래스(Class) 정의
- 객체를 만들기 위한 설계도
객체(Object) 정의
- 클래스(설계도)로 구현한 모든 대상
- 클래스의 인스턴스
인스턴스(Instance) 정의
- 클래스(설계도)를 바탕으로 메모리에 할당된 객체
- 객체를 SW에 실체화
객체와 인스턴스의 차이점
- 클래스의 타입으로 선언되었을 때 객체, 그 객체가 메모리에 할당되어 실제 사용될 때 인스턴스
- 객체 ⊃ 인스턴스
코드 예시
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 | //클래스 public class EPLTeam { ... } //객체와 인스턴스 public class Main { public static void main(String[] args) { EPLTeam Liverpool, Leeds; // 변수 생성 Liverpool = new EPLTeam(); // Liverpool은 EPLTeam 클래스의 객체(인스턴스) Leeds = new EPLTeam(); } } | cs |
- 객체 생성을 위해서는 new 키워드를 사용
- 변수는 스택(Stack) 영역에 생성되고, 객체는 메모리 힙(heap) 영역에 생성
- 변수는 객체 주소를 참조
반응형
'IT > Java' 카테고리의 다른 글
[JAVA 스터디][3주차] 산술,비트,관계,논리 연산자 + instanceof, 화살표(->),switch, assignment(=), 3항 연산자 (0) | 2020.11.27 |
---|---|
[JAVA 스터디][2주차_2] 변수 선언 및 초기화, 배열, 타입변환, 캐스팅, 타입추론 정리 (0) | 2020.11.21 |
[JAVA 스터디][2주차_1] primitive, reference 타입, 리터럴, 상수 정리 (0) | 2020.11.21 |
[JAVA 스터디][1주차_2] javac 컴파일 및 실행, JIT컴파일러 정리 (0) | 2020.11.16 |
[JAVA 스터디][1주차_1] JVM, JDK, JRE, 바이트코드 총 정리 (0) | 2020.11.16 |