- 设计模式之观察者模式(Observer Pattern)
- 代码下载
- 1.概念
定义对象间的一种一对多的依赖关系,以便当一个对象的状态发生改变时,所有依赖于它的对象都得到通知并自动刷新。
2.模型图
场景1:
狗叫,主人醒,猫叫
观察者:主人,猫;
被观察者:狗
狗叫主动通知:主人,猫。
扩展点:观察者可扩展。

- 场景2:
观察者:主人,猫;
被观察者:狗
狗叫主动通知:主人,猫。
扩展点:观察者,被观察者都可扩展,把狗叫抽象出来,扩展为其他叫,也通知。

- 场景3:
狗叫,主人醒,猫叫,老鼠跑
观察者:主人醒,猫叫,老鼠跑等.
被观察者:狗
扩展点:观察者可扩展,被观察者都可扩展。狗(或其他叫)可能惊醒很多动物动作。

总结:场景1,场景2,是被观察者主动通知模式,场景3是观察者订阅模式。
3.实际应用

点击一个窗体按钮,其他窗体各自干各自的事情。

本文深入探讨了观察者模式的概念、模型图、实际应用,并通过三个场景展示了该模式在不同情况下的运用,包括狗叫主动通知主人与猫、狗叫触发多种动物反应、以及点击窗体按钮触发其他窗体事件。
178

被折叠的 条评论
为什么被折叠?



