자바/자바의 정석 Ch.7 객체지향 프로그래밍 II

ch7-23 다형성

2023. 4. 19. 00:35
목차
  1. ch7-23 다형성

ch7-23 다형성

⭐ 조상 타입 참조 변수로 자손 객체 타입 객체를 다루는 것 -> 외우기

 

Tv클래스를 상속받는 자식 SmartTv를 만든다. SmartTv의 멤버는 상속 받은 5개 + 자신의 것 2개 해서 총 7개의 멤버를 갖고 있다. 객체를 생성할 때 지금까지는 타입을 일치시켜 객체를 생성했다. 하지만 다형성에서는 타입이 불일치할 수 있다. 즉 조상 타입 참조 변수로 자손 객체를 생성할 수 있다.

 

참조변수와 객체의 타입이 일치할 때와 일치하지 않을 때의 차이는 뭘까? 

 

왼쪽 그림은 참조변수의 멤버가 7개이고, SmartTv 멤버도 7개이므로 모든 객체를 사용할 수 있다. 오른쪽 그림은 참조변수가 Tv로 멤버가 5개이고, SmartTv 멤버가 7개 이어도 쓸 수 있는 건 5개이다. 조상 타입 참조 변수로 자손 타입 인스턴스를 사용하면, 아무리 멤버가 많다 하더라도 참조변수에 정의되어 있는 5개의 멤버만 사용할 수 있다.

 

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

 

조상 타입 참조 변수로 자손 타입 인스턴스를 사용하면 참조변수에 정의되어 있는 5개의 멤버만 사용할 수 있다. 즉 자손 인스턴스 멤버가 7개의 기능을 전부 쓸 수 없는 것은 가능하다. 하지만 자손 타입 참조변수로 조상 인스턴스를 호출하게 되면 없는 caption을 호출하게 되므로 오류가 발생한다.

 

사용할 수 있는 멤버가 많은데 사용하지 못하는 것과 없는 멤버를 사용하려 하는 것은 전혀 다르다.

 

⭐⭐⭐ 자손 참조변수로 조상 인스턴스 호출하면 절대 안됨.

'자바 > 자바의 정석 Ch.7 객체지향 프로그래밍 II' 카테고리의 다른 글

ch7-24,25 참조변수의형변환(2)  (0) 2023.04.19
ch7-24,25 참조변수의형변환(1)  (0) 2023.04.19
ch7-22 캡슐화  (0) 2023.04.18
ch7-21 접근제어자  (0) 2023.04.18
ch7-17~20 제어자, static, final, abstract  (0) 2023.04.17
  1. ch7-23 다형성
'자바/자바의 정석 Ch.7 객체지향 프로그래밍 II' 카테고리의 다른 글
  • ch7-24,25 참조변수의형변환(2)
  • ch7-24,25 참조변수의형변환(1)
  • ch7-22 캡슐화
  • ch7-21 접근제어자
돌맹이떼굴떼굴
돌맹이떼굴떼굴
돌맹이떼굴떼굴
떼굴떼굴개발자
돌맹이떼굴떼굴
전체
오늘
어제
  • 분류 전체보기 (136)
    • C언어 (6)
      • 홍정모 C언어 (6)
    • 자바 (24)
      • 자바의 정석 Ch.7 객체지향 프로그래밍 II (22)
      • 이것이 자바다 (1)
    • 스프링의 정석 (38)
      • Ch. 02 Spring MVC (34)
      • Ch. 03 Spring DI와 AOP (1)
      • spring error (2)
    • JavaScript (7)
    • HTML&CSS (2)
      • 제대로 파는 HTML CSS - by 얄코 (1)
    • React.js, 스프링 부트, AWS로 배우는 .. (12)
    • BACKJOON, 백준 (7)
    • 프로그래머스 (1)
    • Error (9)
      • Java (4)
    • Spring (5)
    • JPA (2)
    • Vue (1)
    • Git (5)
    • Linux (0)
    • HTML (1)
    • DB (3)
    • Web (2)
    • 잡다 (1)
    • 개발 프로젝트 (2)
    • doom (1)
    • 취업 (3)
    • Network (0)
    • 재테크 (2)
    • 일상 (1)

블로그 메뉴

  • 홈
  • 태그
  • 방명록

공지사항

인기 글

태그

  • 아로나민골드
  • 비전공개발자
  • kosa혜화
  • 온유약국
  • KOSA
  • 비전공
  • 향기부각로션
  • 비맥스메타정
  • 취업연계
  • 갈더마
  • 애크논크림
  • 비맥스가격
  • 고보습로션
  • 보령약국
  • 세타필로션
  • 비맥스
  • 비맥스메타
  • 세타필세라마이드로션
  • 향기지속로션
  • 종로5가약국

최근 댓글

최근 글

hELLO · Designed By 정상우.
돌맹이떼굴떼굴
ch7-23 다형성
상단으로

티스토리툴바

단축키

내 블로그

내 블로그 - 관리자 홈 전환
Q
Q
새 글 쓰기
W
W

블로그 게시글

글 수정 (권한 있는 경우)
E
E
댓글 영역으로 이동
C
C

모든 영역

이 페이지의 URL 복사
S
S
맨 위로 이동
T
T
티스토리 홈 이동
H
H
단축키 안내
Shift + /
⇧ + /

* 단축키는 한글/영문 대소문자로 이용 가능하며, 티스토리 기본 도메인에서만 동작합니다.