我的代码中有一个事件监听器列表:
private List<EventListener> listeners = new ArrayList<EventListener>();
listeners.add(new EventListener() {
@Override
public void someEvent(String arg1, MyClass arg2) {
// ...
}
@Override
public void someOtherEvent(AnotherClass arg1, int arg2) {
// ...
}
}
目前,我正在使用 for 循环调用侦听器:
for (EventListener listener : listeners) {
listener.someEvent("Hello world", (MyClass) myObject);
}
我想使用一种方法来调用它,如下所示:
fireEvent("someEvent", "Hello world", (MyClass) myObject);
或者可能是事件参数的数组或其他东西。
一种方法是创建某种事件对象,但我不想这样做,因为它看起来很乱(有人告诉我我是否错了;我对 Java 没有经验)。有没有办法创建类似于上面的 fireEvent ?EventListener 是一个接口,如果有帮助的话。