aio*_*obe 58
听众和处理程序之间没有正式定义的区别.有些人可能认为它们是可以互换的.然而,对我而言,它们的含义略有不同.
侦听器是一个订阅来自源的事件的对象.参看 在观察者模式.通常,您可以让许多侦听器订阅每种类型的事件,并通过方法添加它们addXyzListener
.
例如:将MouseListener
在Java的API中.
处理程序是负责处理某些事件的对象.典型的场景是为特定事件/任务提供处理程序作为构造函数的参数,或者通过方法设置处理程序setXyzHandler
.换句话说,您通常为每种类型的事件都有一个处理程序.
例如:将MemoryHandler
在Java的API中.
小智 30
最基本的区别是联想
一般来说,只有一个管理所有事件的中央处理程序管理器,而在监听器的情况下,每个想要监听的实体都必须管理自己的监听器集合
dog*_*ane 20
这是我看到它的方式:
一个监听器手表被解雇的事件.例如,KeyListener
等待KeyEvents,MessageListener
等待消息到达队列,等等.
该处理器是负责处理该事件.通常情况下,听众和处理人员齐头并进.例如,KeyListener告诉ExitHandler"按下字母Q"并且处理程序执行逻辑,例如清理资源和正常退出应用程序.类似的ButtonClickListener会告诉同一个ExitHandler"点击退出按钮".因此,在这种情况下,您有两个不同的事件,两个不同的侦听器,但只有一个处理程序.
小智 5
侦听器是在事件发生时收到通知的对象,它有 2 个主要要求 - 1-它必须已向一个或多个源注册才能接收有关特定类型事件的通知 2-它必须实现接收和处理的方法这些通知。Handler 负责处理事件。
归档时间: |
|
查看次数: |
84621 次 |
最近记录: |