首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 软件管理 > 软件开发 >

Head First设计方式-观察者模式

2013-10-13 
Head First设计模式-观察者模式一、整体代码Subject.javaimport java.util.*public class WeatherStation

Head First设计模式-观察者模式

一、整体代码

       Subject.java

import java.util.*;public class WeatherStation {        public static void main(String[] args) {                WeatherData weatherData = new WeatherData();                CurrentConditionsDisplay currentDisplay =                        new CurrentConditionsDisplay(weatherData);                weatherData.setMeasurements(80, 65, 30.4f);        }}


 二、解释

        1、什么时候用到观察者模式

         当观察者需要时时知道主题数据变化时,采用观察者模式。

        2、OO原则

        交互对象的松耦合做准备:(观察者改变,主题不用变)

        任何时候我们都可以增加新的观察者。因为主题唯一依赖的东西是一个实现Observer接口的对象列表,所以我们可以随时增加观察者。事实上,在运行时我们可以用新的观察者取代现有的观察者,主题不会受到任何影响。同样的,也可以在任何你能够找到时候删除某些观察者。
        有新类型的观察者出现时,主题的代码不需要修改。假如我们有个新的具体类需要当观察者,我们不需要为了兼容新类型而修改主题的代码,所有要做的就是在新的类里
实现此观察者接口,然后注册为观察者即可。主题不在乎别的,它只会发送通知给所有实现了观察者接口的对象。




          

热点排行