콘텐츠로 이동

2021 02 20

2021-02-20

Junit, Assertj, Jupiter?

UpCasting, DownCasting

  • 정의 - UpCasting: Parent parent = new Child(); - 변수가 원하는 정보를, 인스턴스가 모두 갖고 있다면 형변환 기호 없이 Compile 뚝딱

    - DownCasting: Child child = new Parent(); - 변수가 원하는 정보를, 인스턴스가 모두 채워주지 못함 - Compile 오류!

  • 그렇다면...? - Child child = (Child)new Parent(); - Compile 가능! - 하지만 런타임 에러 JVM 에서 발생 - 속성, 성질이 정해져 있지 않는 참조형 데이터의 빈 정보를 JVM은 알 길이 없음

    - 하지만, UpCasting이 선행된 변수의 경우, DownCasting을 허용한다

HashTable