设计模式学习与实践(二十一)----观察者模式(observer)
来源:互联网 发布:macbook剪辑视频软件 编辑:程序博客网 时间:2024/06/01 19:36
1.1.1 描述
l 正规描述
观察者模式定义了一种一对多的依赖关系,让多个观察者对象同时监听某一个主题对象。这个主题对象在状态上发生变化时,会通知所有观察者对象,使他们能够自动更新自己。
l 形象描述
想知道咱们公司最新MM情报吗?加入公司的MM情报邮件组就行了,tom负责搜集情报,他发现的新情报不用一个一个通知我们,直接发布给邮件组,我们作为订阅者(观察者)就可以及时收到情报啦。
1.1.2 类图&示意代码
public interface Subject(){
addObserver(Observer observer);
deleteObserver(int index);
notifyObservers();
}
public interface Observer(){
Operation1();
}
public class ConcreteSubject implements Subject(){
private List<Observer> observerList = new ArrayList();
public void addObserver(Observer observer){
observerList.add(observer);
}
public void deleteObserver(int index){
observerList.remove(index);
}
public void notifyObservers(){
int i=0;
int size = observerList.size();
for(;i<size;i++){
observerList.get(i).Operation1();
}
}
}
public class ConcreteObserver implements Observer(){
public void Operation1(){
//to do
}
}
1.1.3 举例
1.1.4 比较
- 设计模式学习与实践(二十一)----观察者模式(observer)
- 设计模式学习笔记(二十一)——Observer观察者
- 设计模式(二)Observer - 观察者模式
- 设计模式学习(二)-- 观察者模式 Observer Pattern
- 设计模式学习--观察者模式(observer)
- 设计模式(二十一)观察者模式(Observer)-行为型
- 【设计模式】HeadFirst设计模式(二):观察者(Observer)模式
- 设计模式--观察者(Observer)
- 设计模式-观察者(Observer)
- 观察者设计模式(Observer)
- Observer(观察者)设计模式
- 十一、观察者模式(Observable、Observer)
- 设计模式之观察者模式(Observer Pattern)(二)
- 设计模式(二)The Observer Pattern 观察者模式
- 设计模式系列(二)观察者模式(Observer Pattern)
- 设计模式学习之二观察者模式(Observer)——参与气象观测站的设计
- 设计模式学习笔记十九(Observer观察者模式)
- 设计模式学习9 -- 观察者模式(Observer)
- 设计模式学习与实践(二十)----命令模式(command)
- 有效进行软件重用的小提示
- c++文件操作
- 2010 前言
- (转帖)防止应用程序被网络操作失败卡死的算法
- 设计模式学习与实践(二十一)----观察者模式(observer)
- 一种非递归生成树的算法
- Drupal十万级百万级节点网站优化
- zz学习富豪理财精粹 让有限的钱无限花!(1)
- statck 的遍历
- 微软渠道动力快车再度启动 深耕区域市场 策略落地时机成熟
- 知识小节(java)
- 学习富豪理财精粹 让有限的钱无限花!(2)
- gridview隐藏行,不删除数据