Polymorphism
2024-09-24
다형성
상속을 했을 경우 다양한 하위 클래스가 존재할 수 있는 특성
상속 관계가 존재해야 나타날 수 있는 특성이다.
예시
- Animal (상위 클래스)
- Rabbit (하위 클래스)
- Cat (하위 클래스)
- Dog (하위 클래스)
와 같이 하나의 상위 클래스에 대한 하위 클래스가 다양하게 존재할 수 있는 특성이다.
하위 클래스가 상위 클래스로 캐스팅이 가능하다. 해당 개념을 업 캐스팅이라고 한다.
업캐스팅 다운캐스팅
어떤 데이터 타입을 다른 데이터 타입으로 바꾸는 것을 캐스팅이라고 한다.
int intOb = 1;
long longOb = (long) intOb;
업’다운 캐스팅은 부모, 자식 클래스에서의 형변환을 말한다.
예 ) 부모 → 자식(다운), 자식 → 부모(업)
이와 같이 reference 타입으로 참조 캐스팅을 사용할 수 있다.
List<Integer> list = new ArrayList<>();
업 캐스팅의 예시