方法覆盖的一个小疑点
在继承类中出现了一个和基类一样名字的私有方法,那么,创建一个继承类对象op后
,用该对象调用f(),是不是仅仅隐藏了基类方法而已!向上转型根本不会发生?我的
理解是因为private方法根本不是基类接口.大家讨论讨论.
class WithFinals {
private void f() {
System.out.println("WithFinals.f()");
}
}
class OverridingPrivate extends WithFinals {
private void f() {
System.out.println("OverridingPrivate.f()");
}
}
class Test{
public static void main(String[] args) {
OverridingPrivate op = new OverridingPrivate();
op.f(); //就这儿
}
}