728x90
Upcasting: 하위 클래스(subclass)의 인스턴스를 상위클래스(superclass)의 참조변수에 할당
Downcasting: 상위 클래스(superclass)의 인스턴스를 하위 클래스(subclass)의 참조변수에 할당
Upcasting은 허용되며, Downcasting은 명시적 형 변환이 필요
객체 형 변환을 메모리 관점에서 보는 것은 자바에서는 옳지 않음. 자바는 객체의 메모리를 직접 다루지 않고 JVM과 Garbage Collector가 자동으로 처리하기 때문에 프로그래머는 객체의 메모리 할당 및 해제에 직접 관여하지 않음.
따라서 객체 형 변환은 다음과 같이 이해
Upcasting: 하위 클래스(subclass)의 인스턴스는 상위 클래스(superclass)의 인스턴스 변수/메서드도 상속받아 접근할 수 있음으로 허용됨
Downcasting: 상위 클래스(superclass)의 인스턴스는 하위 클래스(subclass)의 고유한 인스턴스 변수/메서드를 알 수 없으므로 허용되지 않음.
728x90
'설회' 카테고리의 다른 글
[Sulhoe] 2024. 11. 18 클래스 변수/추상 클래스/인터페이스/제네릭/예외처리 (1) | 2024.11.20 |
---|---|
[Sulhoe] 2024.09.23 실습 코드 (0) | 2024.09.23 |
[Sulhoe] 세미나 진행을 위한 JDK, Eclipse 설치 (0) | 2024.09.09 |