다형성으로 인하여 부모 클래스 타입으로 선언된 참조 변수에는 자식 클래스 인스턴스가 저장될 수 있다.
이러한 특징을 반영하여
부모 클래스 타입으로 선언한 배열에 부모 클래스를 상속 받은 자식 클래스 인스턴스를 저장하는 것도 가능해진다.
이는 장바구니를 생각해보면 간단하게 이해할 수 있다.
Product 라는 부모 클래스를 상속받은 Tv, Phone, Computer 라는 각각의 클래스가 있다고 가정해보자.
class Product{}
class Tv extends Product{}
class Phone extends Product{}
class Computer extends Product{}
그리고 Product 클래스 타입의 배열을 선언하여 각 자식 클래스의 인스턴스를 넣어보자.
// 부모 클래스 타입 배열 생성
Product[] products = new Product[3];
// 생성된 배열에 자식 클래스 인스턴스 저장
products[0] = new Tv();
products[1] = new Phone();
products[2] = new Computer();
상속 관계에 있어서 다형성은 이러한 형태로 데이터 관리를 할 수 있도록 해준다는 장점을 제공한다.
'JAVA' 카테고리의 다른 글
인터페이스 (1) | 2022.09.26 |
---|---|
추상 클래스 (Abstract class) (0) | 2022.09.25 |
다형성 (0) | 2022.09.24 |
this 와 super (0) | 2022.09.21 |
오버라이딩(Overriding) (0) | 2022.09.20 |