定义:
在对象之间定义一对多的依赖,这样一来,当一个对象改变状态,依赖它的对象都会收到通知,并自动更新
角色:
可自己实现观察者模式,也可利用JDK内置的支持实现。这个比较简单:
主题(可观察者):java.util.Observable类
观察者:java.util.Observer接口
主题(可观察者)要如何送出通知?
1.继承java.util.Observable类
2.需要以下两个步骤:
2.1先调用setChanged()方法,标记状态已经改变的事实
2.2再调用两种notifyObservers()方法中的一种。
notifyObservers()
notifyObservers(Object arg)
如何将对象变成观察者?
1.每一个观察者必须实现java.util.Observer接口,让自己成为观察者
2.调用addObserver()方法
观察者如何接收通知?
在实现的Observer中update(Observable o, Object obj)即可
Observable o:让观察者知道是哪个主题通知它
Object obj:这正是上面notifyObservers()传入的数据
分享到:
相关推荐
用c++和lua实现的观察者模式小栗子,其中c++版本参考了别人的实现
设计模式C++学习之观察者模式(Observer)
观察者模式 概述 定义对象间的一种一对多的依赖关系,当一个对象的状态发生改变时,所有依赖于它的对象都得到通知并被自动更新。 适用性 1.当一个抽象模型有两个方面,其中一个方面依赖于另一方面。 将这二者封装...
结合微信公众号讲解观察者模式,生动形象,关键是上手快啊
观察者模式通常的叫法叫做订阅-发布模式,类似于报刊杂志的订阅,观察者和被观察者就是读者和邮局的关系,读者先要在邮局订阅想要的报刊,当报刊发行时,邮局会将报刊邮寄到读者家里。观察者(Observer)和被观察者...
观察者模式(Observer) 用意:定义了一种一对多的依赖关系,让多个观察者对象同时监听某一主题对象。
Java内置的Observable类和Observer接口提供了基本的观察者模式功能,你可以通过继承Observable类和实现Observer接口来使用
观察者模式(Observer Pattern)是一种对象行为型设计模式,它定义了对象之间的一对多依赖关系。 当一个对象的状态发生改变时,所有依赖于它的对象都会得到通知并自动更新。这种模式通常用于实现分布式事件处理系统...
观察者模式示例 观察者模式示例 观察者模式示例 观察者模式示例 观察者模式示例 观察者模式示例
定义对象间的一种一对多的依赖关系,以便当一个对象的状态发生改变时,所有依赖于它的对象都得到通知并自动刷新。
Observer.rarObserver.rarObserver.rarObserver.rar观察者设计模式
C#面向对象设计模式 (行为型模式) Observer 观察者模式 视频讲座下载
设计模式内部培训资料-详细介绍了观察者模式。
1. 设计模式 1.1 含义 1.2 作用 1.3 设计原则 1.4 分类 2. 简单工厂模式 (SimpleFactoryPattern) 3. 工厂方法模式 (Factory Method) 4. 单例模式 (Singleton) ...17. 观察者模式 (Observer Pattern)
C#面向对象设计模式纵横谈(19):(行为型模式) Observer 观察者模式 (Level 300)
observer观察者模式
观察者模式Observer: 以手机号码为例,老师的手机号码存在学生的手机里,若老师的手机号改变,她会发一条短信通知每个学生自己手机号变了
我们说学习Java应该从Swing开始,那么学习Swing最重要的思想就是对于观察者模式的理解(Observer Pattern)。因为,该设计模式在Java Swing框架中贯穿了始终。对于C#的委托、代理概念所使用的Callback(回调模式--...
在设计一组依赖的对象与它们所依赖的对象之间一致(同步)的交流模型时,观察者模式(Observer Pattern)很有用。它可以使依赖对象的状态与它们所依赖的对象的状态保持同步。这组依赖的对象指的是观察者(Observer)...