【发布时间】:2016-09-01 04:05:46
【问题描述】:
我有一个界面:
public interface InterfaceListener {
void eventEnd();
}
有些方法接收这个InterfaceListener 作为参数,当然每个方法都以自己的方式实现它。例如:
myObject.callMethod(false,InterfaceListener() {
@Override
public void eventEnd() {
//do some extra code
}
});
现在我想添加一些更改,以确保 eventEnd() 中的每个实现只有在传递另一个方法后才会被调用 - callMyExtraMethod() 对所有调用都是通用的,类似这样:
myObject.callMethod(false,InterfaceListener() {
@Override
public void eventEnd() {
if (callMyExtraMethod()) {
//do some extra code
}
}
});
任何想法如何在不传递每个实现并手动向所有人添加相同检查的情况下将其添加到逻辑中?
【问题讨论】:
标签: java oop inheritance interface