说我有这个超级班级:
public class MySuperClass {
protected void MyPrMethod() {
//Do...
}
public void MyPuMethod() {
MyPrMethod();
}
}
和这个子类:
public class MySubClass extends MeSuperClass {
public MySubClass() {}
@Override protected void MyPrMethod() {
//Do this instead...
}
}
然后进入主要:
MySubClass mySubClass = new MySubClass ();
mySubClass.MyPuMethod();
mySubClass.MyPuMethod()将调用哪个MyPrMethod?
编辑:我已经三次投票了。由于我现在不在家,所以我现在无法尝试,尽管现在知道答案将有助于我设计自己正在编写的程序中的零件。
最佳答案
因为方法MyPrMethod()
在子类中被覆盖,所以将调用子类实现。
实际调用的方法取决于调用它的对象。