基本上,我有3个班级
class abstract A{}
protected aMethod(){}
class abstract B extends A{
protected aMethod(){}
}
class C extends B{
// How do I call B.aMethod() from here? As super.aMethod()
// would call A.aMethod()?
}
查看代码。我想调用一个比最低级别高一级的方法。但是调用super.aMethod()会返回根类实现吗?
编辑:结果超级确实只升高一级,上帝知道我在尝试什么......新秀错了,道歉所有!答案 0 :(得分:2)
super.aMethod()
会完全按照您的意愿行事。
答案 1 :(得分:0)
实际上从C调用super.Method(),应该在B中调用Method()而不是在A中调用。
答案 2 :(得分:0)
super.aMethod()
如果B实现该方法,应该可以正常工作。
此外,就像您的标记上的注释一样,多重继承会说“扩展”多个基类,例如:
public C extends B, A { ... } // WRONG SYNTAX!
,Java不支持。