printSum() 이란 메소드를 가진 클래스 4개가 있어
각각 A B C D 인데
상속관계는 A<B<D , A<C 상태로 A가 부모클래스야
여기서
A a; B b; C c; D d; 이렇게 객체 선언 해주고
d=new D(); d.printSum();
d=new C(); d.printSum();
d=new B(); d.printSum();
d=new A(); d.printSum();
해주면
첫줄만 사용가능 하던데
A,B와는 상속관계인데 부모클래스라 못쓰는거야?
C는 관련이 없어서 못쓰는거같고
그럼 C를 옮겨서 D<C 형태로 D가 부모가 되게끔 상속해주면
3번째줄이 사용가능하게 되겠네?
무슨 이유인지 모르겠어
선언을 자식 클래스로 했기 때문임. new A 와 new B new D new C 다 쓰고 싶었으면
A d; 로 선언했어야지