首页 > 其他 > 详细

观察者模式(Observer)

时间:2015-12-29 16:00:09      阅读:75      评论:0      收藏:0      [点我收藏+]

      观察者模式:定义了对象之间的一对多依赖,这样一来,当一个对象改变状态时,它的所有依赖者都会收到通知并更新。

主题和观察者定义了一对多的关系,观察者依赖于主题。当主题对象的状态发生改变时,观察者就会被通知。根据通知观察者进行相关操作。

 一、 涉及角色主题接口观察者接口具体主题具体观察者。

     

     技术分享

优点:主题是真正拥有数据的对象,观察者是主题的依赖者,在数据变化跟新时这样比多个对象控制同一份数据,可以更干净的OO设计。

缺点:并不是所有的观察者都需要这份数据,有可能只需要其中的一部分,却接收了一堆数据。(JDK中的观察这模式,提供了支持,支持以个getter方法的主动获取数据)

二、JDK中观察者模式

    JDK对观察者模式提供了支持。主题类Observable,具体主题类可以继承JDK中实现类Observable类。具体观察者可以实现JDK中的观察者接口Observer接口

    主题通知观察者:继承JDKObservable的主题接口,通知观察者对象步骤。

    (1)先调用Observable中的setChanged()方法。标记状态已经改变

    (2)再调用notifyObservers()或notifyObservers(arg)(带参数方法可以推送指定的参数)。

    

 

观察者模式(Observer)

原文:http://www.cnblogs.com/mxmbk/p/5083464.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!