Ch7-23. 다형성
0. 목차
Chapter7. 객체지향 프로그래밍Ⅱ
Ch7 - 23. 다형성
Ch7 - 23. 다형성
▶ 다형성(polymorphism)란?
▷ 여러 가지 형태를 가질 수 있는 능력
▷ 조상 타입 참조변수로 자손 타입 객체를 다루는 것
▷ 객체와 참조변수의 타입이 일치할 때와 일치하지 않을 때의 차이?
-
객체 = 참조변수 타입
-
객체 ≠ 참조변수 타입
▷ 자손 타입의 참조변수로 조상 타입의 객체를 가리킬 수 없다!
Tv t = new SamrtTv();
= OK!
= ERROR!SamrtTv s = Tv();
-
Tv t = new SamrtTv();
= OK!
-
SamrtTv s = Tv();
= ERROR!
▶ Q&A
▷ Q. 참조변수의 타입은 인스턴스의 타입과 반드시 일치?
- A. No! 보통은 일치하나, 불일치일 때도 있음(불일치 = 다형성)
Tv t = new SamrtTv()
▷ Q. 참조변수가 조상 타입일 때와 자손 타입일 때의 차이?
▷ Q. 자손 타입의 잠조변수로 조상 타입의 객체를 가리키기 가능?
- A. No!