设计模式 之 观察者模式(间谍)

  在介绍spring 监听事件都时候说了观察者模式,那么现在我们来讲讲观察者模式,也叫做发布订阅模式!

  (2020-04-07 )

  明天补充。

  (2020-04-08)

    首先,我们看下观察者模式都概念:

  

 

   定义一对多都关系,当对象进行动作的时候,那个“多”,也会相应得回馈,这就是观察者模式,有点类似于间谍行动。

  那么代码就容易写了,定义一个一对多的关系,我们在被观察者抽象类中定义多个观察者,观察者则是一个不确定的动作,那就是接口。

  观察者:

  

 

   被观察者:

 

被观察者里面管理观察者,以及观察者发送消息(notify).

 我们现在需要一个真正的被观察者:

 

 

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

 

观察者实现类:

 

 观察者具体要怎样执行动作,那就是自己的事情了。

我们来看看client执行结果:

 

 

 

 

 

 

当申明一个被观察者,并且执行被观察者某个业务逻辑时,开始同志观察者,观察者执行自己的逻辑。

 

下面时几个关键截图,大家可以来参考:

 

 

其实,观察者模式时很人性化的模式。

我上面说了,靠间谍去记忆,间谍肯定是要派遣到被观察者中去才能发挥作用,但是他们隐藏的很深,自己带来的之时接口实现(与自己国家是暗号交流)!

这样记忆起来就很容易理解了。

posted on 2020-04-07 22:24  Jason_LZP  阅读(152)  评论(0)    收藏  举报