观察者模式

2019-06-18  本文已影响0人  lantern王

介绍:
观察者模式是一个使用率非常高的模式,它最常用的地方是gui系统、订阅--发布系统。因为这个模式的一个重要作用就是解耦,将被观察者和观察者解耦,使得他们之间的依赖性更小,甚至做到毫无依赖。
定义:
定义对象间一种一对多的依赖关系,使得每当一个对象改变状态,则所有依赖于它的对象都会得到通知并被自动更新。

观察者:


image.png

被观察者:


image.png

client:


image.png
image.png

观察者基类:


image.png

被观察者基类:


image.png
guan'cha

通过查看被观察者和观察者基类,我们不难发现被观察者通过维护一个数组来维护所有观察者对象,通过标志位和调用观察者的onupdate方法来通知数组内的所有观察者。从而实现订阅发布的观察者模式。

上一篇下一篇

猜你喜欢

热点阅读