동일한 코드로 다른 출력을 사용할 수 있는 다형성에 대해서 알아보자.
상속 클래스를 구현한다.
하위클래스에서 메소드를 오버라이딩한다.
상위클래스로 형변환을 한다.
생성된 인스턴스로 오버라이딩된 메소드를 호출한다.
class Extend0 {
void extendf() {
System.out.println("extendf: extend0출력");
}
}
class Extend1 extends Extend0 {
@Override
void extendf() {
super.extendf();
System.out.println("extendf: extend1출력");
}
}
public class Inheritance {
public static void main(String[] args) {
Extend0 e00 = new Extend1();
//생성된 Extend1인스턴스의 메소드 호출
e00.extendf();
}
}
👉 실행화면
extendf: extend1출력
다형성에 대해서 알아보았다.
좋은 글 감사합니다.