- 观察者模式
1定义:
定义了对象之间一对多的依赖关系,当一个对象改变状态时(主题对象),它的所有依赖者都会收到通知并自动更新(观察者)。
2.设计原则:
为了交互对象之间的松耦合设计而努力。
3.松耦合的体现:
(1)主题对象只知道观察者实现了某个接口,而不知道具体的观察者是谁,做了什么或者其他的细节。
(2)任何时候都可以增加,删除新的观察者。主题对象不受影响。
(3)可以独立的复用主题对象或者观察者。
(4)改变任何一方,另一方都不会受影响。
- 设计实现观察者模式:
1.一般主题接口存在一下三个方法:
注册观察者方法
删除观察者方法
通知方法
数据变化方法
设置数据的方法
等
核心:设置数据的方法被调用,说明数据发生改变,调用数据变化方法,数据变化方法中调用通知方法,通知观察者,通知方法中调用更新方法,改变观察者的数据。
2.观察者接口一般有一个更新的方法,供主题对象通知调用,改变一些数据。
3.代码示例
design-mode-demo/src/pattern/observer/