事件源生成模式
2008-01-05 19:59:44 来源:WEB开发网核心提示:设有一个事件:interface XXXListener {void event1Happens(String param);void event2Happens(String param);}可以做一个对应的类:class XXXDispatcher extends Vector implements XXXList
设有一个事件:
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);
更多精彩
赞助商链接