监听器设计模式总结
监听器设计模式,是观察者设计模式的一种实现,它并不是23种设计模式之一。
观察者设计模式
从现实角度来说,我们每一个人都是一个观察者,同时也是一个被观察者。作为被观察
者,我们会发出一些信息,观察者在接收到这些信息后,会做出相应的反映;而作为观察者, .
我们是可以被“被观察者”所发出的信息影响的。一个被观察者,可能存在多个观察者。也
就是说,一个被观察者所发出的信息,可能会影响到多个观察者。
观察者设计模式,定义了一种一对多的关联关系。一个对象A与多个对象B、C、D之
间建立“被观察与观察关系”。当对象A的状态发生改变时,通知所有观察者对象B、C、D。
当观察者对象B、C、D在接收到A的通知后,根据自身实际情况,做出相应改变。
当然,观察者与被观察者指的都是具有某一 类功能的对象,所以这里的观察者与被观察
者都是指的接口,而真正的观察者对象与被观察者对象,是指实现了这些接口的类的对象。
而我们所说的监听器实际对应的就是观察者,而被监听对象,则是指被观察者。
当被监听对象的状态发生改变时也需要通知监听器,监听器在收到通知后会做出相应改变。
与观察者设计模式不同的是,被监听对象的状态改变,被定义为一个对象,称为事件;
被监听对象有了个新的名子,称为事件源,对监听器的通知,称为触发监听器。其实质与观
察者设计模式是相同的。
Servlet规范中的监听器
Servlet规范中已经定义好了八个监听器接