在此代码中:
public abstract class Bird {
private void fly() {
System.out.println("Bird is flying");
}
public static void main(String[] args) {
Bird bird = new Pelican();
bird.fly();
}
}
class Pelican extends Bird {
protected void fly() {
System.out.println("Pelican is flying");
}
}
请解释为什么这是“ Bird is flying”的输出,因为私有成员没有继承并且我在Bird中有一个Pelican实例?
答案 0 :(得分:-1)
当引用类型为Bird时,尽管类型为Pelican,该对象也只能访问Bird类中的方法。引用类型始终表示约束,并且不能访问例如的字段。子类。