/ JAVAJUNGSUK

Ch7-23. 다형성

자바의 정석 기초편

0. 목차



Chapter7. 객체지향 프로그래밍Ⅱ

Ch7 - 23. 다형성



Ch7 - 23. 다형성


▶ 다형성(polymorphism)란?

▷ 여러 가지 형태를 가질 수 있는 능력
▷ 조상 타입 참조변수로 자손 타입 객체를 다루는 것




▷ 객체와 참조변수의 타입이 일치할 때와 일치하지 않을 때의 차이?
  • 객체 = 참조변수 타입

  • 객체 ≠ 참조변수 타입



▷ 자손 타입의 참조변수로 조상 타입의 객체를 가리킬 수 없다!

Tv t = new SamrtTv(); = OK!
SamrtTv s = Tv(); = ERROR!

  • Tv t = new SamrtTv(); = OK!

  • SamrtTv s = Tv(); = ERROR!


▶ Q&A

▷ Q. 참조변수의 타입은 인스턴스의 타입과 반드시 일치?
  • A. No! 보통은 일치하나, 불일치일 때도 있음(불일치 = 다형성)
    Tv t = new SamrtTv()
▷ Q. 참조변수가 조상 타입일 때와 자손 타입일 때의 차이?
▷ Q. 자손 타입의 잠조변수로 조상 타입의 객체를 가리키기 가능?