2.观察者模式(p39-78)
举例: 微信订阅号(主题subject或可观察者observable),观察者(observer).
观察者模式定义了对象之间一对多依赖,这样一来,当一个对象改变状态时,它的所有依赖者都会收到通知并自动更新.
松耦合:两个对象松耦合,他们依然可以交互,但是不太清楚彼此细节.
设计原则 : 为了交互对象之前的松耦合设计而努力.
松耦合的设计之所以能让我们建立有弹性的OO系统,能够应对变化,是因为对象之间的相互依赖降到了最低
- 具体Java内置支持
java.util.Observable;实现类
java.util.Observer;接口
| Observable类 | Observer接口 |
|---|---|
| addObserver() | update() |
| deleteObserver() | |
| notifyObserver() | |
| setChanged() |
设计工具箱
- 基础
- 抽象
- 继承
- 多态
- 封装
- 原则
- 封装变化
- 多用组合,少用继承
- 针对接口编程,而不是实现编程
- 为交互之间的松耦合设计而努力
- 模式
- 观察者模式:在对象之间定义一对多的依赖,这样依赖,当一个对象改变状态,依赖他的对象都会收到通知,并自动更新.
- 本文链接: https://halo.cjh.kim/archives/headfirst设计模式总结2
- 版权声明: 本博客所有文章除特别声明外,均采用CC BY-NC-SA 3.0 许可协议。转载请注明出处!