设有一个事件:
interface xxxlistener {
void event1happens(string param);
void event2happens(string param);
}
可以做一个对应的类:
class xxxdispatcher extends vector implements xxxlistener {
public void event1happens(string param) {
for (xxxlistener listener: this) {
listener.event1happens(param);
}
}
public void event2happens(string param) {
for (xxxlistener listener: this) {
listener.event2happens(param);
}
}
}
implements xxxlistener不是必须的,只是现在大多数ide都支持直接implements一个接口,可以自动生成所有的方法。
然后事件源addxxxlistener和removexxxlistener时直接调用xxxdispatcher.add,remove
需要触发事件1的时候直接调用xxxdispatcher.event1happens(param);
闽公网安备 35060202000074号