oop调用层次结构中更高级别的类的被重写的受保护方法
在java
中考虑以下类class A
{
protected void methodA()
{
System.out.println("methodA() in A");
}
}
class B extends A
{
protected void methodA() // overrides methodA()
{
System.out.println("methodA() in B");
}
protected void methodB()
{
}
}
public class C extends B // needs the functionality of methodB()
{
public void methodC()
{
methodA(); // prints "methodA() in B"
}
}
如何从类C中的methodC()调用a中的methodA()?可能吗
# 1 楼答案
看起来很像你的问题
你能编辑B并添加一个调用super的函数吗。方法A()?那就叫C
# 2 楼答案
这是不可能的
见http://forums.java.net/jive/thread.jspa?messageID=5194&tstart=0 和http://michaelscharf.blogspot.com/2006/07/why-is-supersuper-illegal.html