public class FinalMethod {
public static void main(String[] args) {
Sub s = new Sub(); //实例化
s.doit(); //调用doit()方法,这里输出的结果是“父类.doit()");”
Parents p = s; //执行向上转型操作
// p.doit(); //不能调用private方法
p.doit2();
p.doit3();
}
}
Sub类的doit()方法并不能覆盖父类Parents的doit()方法,这两个doit()方法之间并不存在覆盖关系。由于,父类Parents的doit()方法是private的,JVM首先在sub实例对象时无法找到匹配的doit()方法,所以就直接调用其父类的doit()方法。
不光是private的方法不能重载,static, final都不能重载。
|