java设计模式(十四)——观察者模式(Observer)

来源:互联网 发布:淘宝豆豆菲全球美妆 编辑:程序博客网 时间:2024/06/12 21:46

观察者模式,也就是说一个对象在观察另一个对象的变更(其实是一个对象对另外一个对象的依赖,因为依赖,所以需要观察)。需要说明的是,这种观察是一对多的,一个对象可以观察多对象,一个对象也可以被多个对象观察。

从概念的解释上来说,是观察,而从模式实现上来讲,其实是刚好反过来的模式,如果被观察者发生了变化,那么需要通知观察者。或者说,这是一种被动的观察。

由被观察者管理观察者(新增或者删除观察者,所有的观察者均实现相同的接口,有相同的方法被告知被观察者发生了变化),并且被观察者如果发生了变化,需要逐一通知所有的观察者。

定义观察者接口,定义被观察者接口,定义被观察者抽象类,在抽象类中统一处理对观察者们的管理,对观察者们的逐一通知。有被观察者的实现子类去完成具体的变化操作,并且调用父类(被观察者抽象类)的逐一通知观察者们的方法。

原创粉丝点击