首页 > 代码库 > GJM: 设计模式 - 观察者模式

GJM: 设计模式 - 观察者模式

GJM : 观察者模式

视频地址: http://www.imooc.com/learn/415 

本课程通过一个天气预报的发布和订阅案例,来讲解观察者模式在Java项目中的应用。主要包括观察者模式的结构,观察者模式的两种实现方式推模型和拉模型,以及何时使用观察者模式等内容。

观察者模式实战

      观察者模式的结构和说明

      学习观察者模式通用代码

观察者模式详解

      认识观察者模式

      实现的两种方式:推模型和拉模型

      利用Java提供的观察者实现

       简述观察者优缺点

       何时使用观察者模式

观察者模式的定义

       定义对象间的一种一对多的依赖关系。当一个对象的状态发生改变时,所有依赖于它的对象都得到通知并被自动更新。

      观察者收到消息  被观察者观察这观察者 当观察者收到消息时候执行各自的逻辑处理

观察者模式的结构

Subject 目标 天气

Subject维护 Observer列表   Subject 有 Add Delete 

Subject收到目标消息之后 执行 Notify()  => subject  Observer 【 Update() 】

结构图

Subject{  +Add(Observer)    + Delete(Observer)    + Notify()}    <== ConcreteSubject [目标消息]

Subject =- +subject-> Observer{ + Update()}   <== ConcreteObserver 接口逻辑实现类

 

GJM: 设计模式 - 观察者模式