다운캐스팅

    [JAVA] 업캐스팅(up casting), 다운캐스팅(down casting) Casting을 하는 이유는? 다형성?

    기본적으로 캐스팅은 서로 관련 없는 데이터끼리는 변환되지 않는다. 예를 들어서boolean a = (int) 1; boolean 자료형과 int자료형은 서로 타입이 일치하지 않은 데이터 이기 때문에 되지 않는다. 참조형 데이터 역시 마찬가지이다. 자 그럼 참조형 데이터가 서로 관련이 있다는 것은? 1. 상속관계 2. 인터페이스를 사용해서 확장이 된 경우 이 글에서는 상속관계를 통해 캐스팅을 확인해보도록 하겠습니다. 상속관계의 경우 슈퍼클래스와 서브클래스가 있을 때 서브클래스는 슈퍼클래스보다 가지고 있는 많이 있습니다. 데이터의 양 : 서브클래스 > 슈퍼클래스 (서브클래스는 슈퍼클래스의 데이터를 전부 상속받았기 때문에) 이론적으로 쉽게 생각해보면 서브클래스는 슈퍼클래스의 데이터를 전부 사용할 수 있는데, ..