[JAVA] 업캐스팅(Upcasting) 정리

2020. 7. 31. 15:11Programming Language/JAVA

반응형

■ UpCasting

상속관계의 두 클래스를 기준으로 부모클래스의 참조 변수가 자식클래스의 객체를 참조할 수 있는것을 의미한다. Java의 다형성을 가장 잘 설명하는 특징이다.


1. 부모 클래스 

※ 구성

  • 생성자
  • 일반메소드(parentMethod)

2. 자식 클래스

※ 구성

  • 생성자
  • 일반메소드(childMethod)

3. main() 메소드

※ 형식 

1) 부모클래스 참조변수 = (부모클래스) new 자식클래스(); 

- 형변환 기호 생략 가능 

 

2) 부모클래스 참조변수 = new 자식클래스();

 

주의!)

부모클래스의 참조변수가 자식클래스의 객체를 참조하고 있지만 

직접적으로 자식클래스의 인스턴스변수, 메소드를 호출할 수 있는것은 아니다.

따라서 주석처리된 부분은 에러가 발생한다.

4. 출력결과

상속관계에 있는 자식클래스의 객체생성은 부모클래스의 객체가 생성된 이후에 생성되기 때문에 부모클래스의 생성자가 먼저 호출되고, 자식클래스의 생성자가 호출된다.


SOURCE CODE

 

hyunmin94/JavaExam

Contribute to hyunmin94/JavaExam development by creating an account on GitHub.

github.com

 

반응형