`
wandejun1012
  • 浏览: 2693851 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

观察者模式

阅读更多

 

主要是2个主体,一个是通知者,一个是观察者。

举个例子:通知者好比是公司前台,观察者就是公司员工,当老板一进入公司时,公司前台触发,通知所有观察者停止游戏,老板来了。

 

观察者向通知者注册监听,一旦有情况就汇报。

 

1、对于通知者而言,

1.1  它里面有个方法notifyObserver()方法。

1.2  它里面有个观察者列表,遍历此列表,然后调用观察者的update方法,即观察者的业务逻辑。·   

1.3  它里面有增加观察者方法,attach(AbstractObserver abstractObserver)

1.4  它里面还有减少观察者方法,detach(AbstractObserver abstractObserver)

 

2、对于观察者而言

2.1 它里面有个update方法,即执行业务逻辑,比如停止手中的游戏。

2.2 观察者有个构造方法,传入指定的通知者,这样当通知者状态变化时,可以拿到具体变化的原因。

 

 

具体的代码见附件。

 

 

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics