假设有一个子类和一个父类,
父类 dad = new 子类();
这时dad不能调用子类独有的方法,只能调用子类重写了父类的方法
但是为什么可以在子类重写父类的方法中调用子类独有的方法
public class Dad {
public void dad() {}
}
//这是父类
public class Son extends Dad{
@Override //重写方法
public void dad() {
this.son(); //这里可以调用子类独有的方法,但是对象是dad类的
}
public void son( ) {}//这是子类独有的方法
}
//这是子类
public class Text {
public static void main(String[] args) {
Dad dad = new Son();
dad.son()//报错,调用不了
dad.dad()//这样却可以间接调用son()