コードにイベント リスナーのリストがあります。
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);
または、イベント引数の配列または何か。
これを行う 1 つの方法は、ある種のイベント オブジェクトを作成することですが、面倒なので特にやりたくありません (ここで間違っているかどうか誰か教えてください。私は Java の経験がありません)。上記のような fireEvent を作成する方法はありますか? それが役立つ場合、EventListenerはインターフェースです。