一、观察者模式
定义了对象之间的一对多的之间的依赖,这样一来,当一个对象改变状态时,它的所有依赖着都会收到通知并自动更新。
一对多体现在被观察者WeatherData中的ArrayList observers和观察者中的subject;
二、设计规则
为了交互对象之间的松耦合设计而努力。
三、代码实现
这是一个天气预报系统,当天气改变时,通知所有观察者。
1、主题
天气主题
2、观察者
当前观察者
3、显示信息
4、Main
四、设计图
五、总结
当两个对象之间松耦合,它们依然可以交互,但是不太清楚彼此的细节。观察者模式提供了一种对象设计,让主题和观察者之间松耦合。