设计模式 之 观察者模式(间谍)
在介绍spring 监听事件都时候说了观察者模式,那么现在我们来讲讲观察者模式,也叫做发布订阅模式!
(2020-04-07 )
明天补充。
(2020-04-08)
首先,我们看下观察者模式都概念:

定义一对多都关系,当对象进行动作的时候,那个“多”,也会相应得回馈,这就是观察者模式,有点类似于间谍行动。
那么代码就容易写了,定义一个一对多的关系,我们在被观察者抽象类中定义多个观察者,观察者则是一个不确定的动作,那就是接口。
观察者:

被观察者:

被观察者里面管理观察者,以及观察者发送消息(notify).
我们现在需要一个真正的被观察者:

观察者有自己的方法,发生事件后,执行notify
观察者实现类:

观察者具体要怎样执行动作,那就是自己的事情了。
我们来看看client执行结果:


当申明一个被观察者,并且执行被观察者某个业务逻辑时,开始同志观察者,观察者执行自己的逻辑。
下面时几个关键截图,大家可以来参考:

其实,观察者模式时很人性化的模式。
我上面说了,靠间谍去记忆,间谍肯定是要派遣到被观察者中去才能发挥作用,但是他们隐藏的很深,自己带来的之时接口实现(与自己国家是暗号交流)!
这样记忆起来就很容易理解了。
浙公网安备 33010602011771号