업캐스팅 다운캐스팅

임형종·2024년 2월 3일

자바

목록 보기
9/9

캐스팅(Casting)

  1. 타입을 변환하는것을 말하며 형변환이라고도 한다.
  2. 부모와 자식간 클래스 간에는 서로간의 형변환이 가능하다.

  • 핸드폰을 상위 클래스라고 치면 피쳐폰,스마트폰은 하위클래스이다.
  • 상속 받는 클래스를 자식 클래스, 하위 클래스 또는 서브 클래스라고 부른다.
  • 상속 해주는 클래스를 부모 클래스, 상위 클래스 또는 슈퍼 클래스라고 한다.

업캐스팅(Upcasting)

:자식 클래스(하위클래스)의 객체가
부모 클래스(상위 클래스)타입으로 형변환 되는 것

다운캐스팅(Downcasting)

:업캐스팅 되어 있는 상태에서 하위클래스 고유 메소드를 호출 해주는것
,Upcasting된 상태에서 다시 원래 객체 타입으로 형변환

예시)

  • 업캐스팅
    : phone4,phone5의 변수는 스마트폰과 피쳐폰의 객체를 버리고 핸드폰의 객체로 가져온다.

  • 다운캐스팅
    : phone4의 변수는 핸드폰이라 스마트폰의 wifi를 가져올수 없었지만 다운케스팅으로 바꿔주면서
    핸드폰의 변수들을 버리고 스마트폰의 변수들을 가져올수 있게됨으로싸 wifi사용가능

  • 결과적으로 마지막에 phone4,phone5의 결과는
    phone4는 스마트폰의 call값을 가져온다.
    phone5는 핸드폰의 call값을 가져온다.

profile
제로부터시작하는개발생활

0개의 댓글