假设我创建了一个类的实例并同时重写了它的一个方法——就像这样
MyClass fred = new MyClass() {
@Override
public void mymethod() {
super.mymethod();
//call something here
}
};
现在让我们假设我想调用一个本地方法,它与我的覆盖方法具有相同的名称和相同的(缺少)参数 - 例如我有
public void mymethod() {
//my stuff in here
}
我如何从覆盖的方法中调用它(在//call something here 行上)???
这可能吗?使用
this.mymethod();
导致无限循环(被覆盖的方法只是简单地调用自身)
有没有办法访问这个方法(也许除了通过静态引用?)
很抱歉,如果这是一个常见问题 - 这是一件很难搜索的事情,我发现的一个问题没有回复,而且措辞也不是那么好,所以我正在尝试自己!!
最佳答案
我手边没有编译器,所以我不能 100% 确定,但试试这个:
ParentClass.this.myMethod();
关于Java 方法重写 - 访问父类中的方法 - 这可能吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6619123/