通常,通过向将引发事件的类注册回调函数来处理事件.当事件发生时,该类将调用回调函数.
你会发现很多来自swing的例子.这是一个非常好的例子,来自聊天应用程序,我花了一些时间
这是一个允许开发人员将聊天功能嵌入其应用程序的库.ChatClient类具有IMessageListener类型的成员
IMessageListener listener;
Run Code Online (Sandbox Code Playgroud)
在为ChatClient类创建对象之后,用户将在对象上调用setListener.(可以是多个侦听器的addListerer)
public void setListener(IMessageListener listener) {
this.listener = listener;
}
Run Code Online (Sandbox Code Playgroud)
并且在收到消息时的库方法中,我将在该侦听器对象上调用getMessage方法
这是一个基本的例子.更复杂的库将使用更复杂的方法,如实现事件队列,线程,并发等.
编辑:是的.这确实是观察者模式
| 归档时间: |
|
| 查看次数: |
2042 次 |
| 最近记录: |