常见设计模式之观察者模式(Observer)
来源:互联网 发布:人群画像 淘宝 编辑:程序博客网 时间:2024/05/16 10:21
有时被称作发布/订阅模式,观察者模式定义了一种一对多的依赖关系,让多个观察者对象同时监听某一个主题对象。这个主题对象在状态发生变化时,会通知所有观察者对象,使它们能够自动更新自己。
有一个主题为时间,各种手表希望在时间变化时收到通知,并做出处理。
//继承后Observable可以添加观察者,并发送通知public class Time extends Observable { //主题的状态 private Date date; //状态改变 public void setDate(Date date) { this.date = date; setChanged();//标记状态改变 notifyObservers(date); //通知观察者,并发送状态 } public Date getDate() { return date; }}
//实现观察者接口,可以收到通知public class Watch implements Observer { //关注的状态 private Date date; @Override //通知函数 public void update(Observable o, Object arg) { date = (Date)arg; play(); } //收到通知后处理 public void play(){ System.out.println("当前时间为"+date); }}
public class CurrentTime { @Test public void method() { Time time = new Time();//创建主题类 Watch watch = new Watch();//创建观察者 time.addObserver(watch);//为当前主题类添加观察者 time.setDate(new Date());//主题状态改变,watch打印Wed Jul 13 17:34:38 CST 2016 }}
0 0
- 常见设计模式之观察者模式(Observer)
- 设计模式之Observer(观察者模式)
- 设计模式之Observer(观察者模式)
- 【设计模式】之观察者模式(Observer)
- 设计模式之--观察者模式(Observer)
- 设计模式之观察者(Observer)模式
- 设计模式之观察者(observer)模式
- 设计模式之观察者模式(Observer)
- 设计模式之-观察者模式(Observer)
- 设计模式之观察者模式(Observer)
- 设计模式之观察者模式(Observer)
- 设计模式之观察者模式(Observer)
- 设计模式之观察者(Observer)模式
- 设计模式之观察者模式(Observer)
- 设计模式之-观察者(Observer)模式
- 设计模式之Observer(观察者)模式
- 设计模式之观察者模式(Observer)
- 设计模式之Observer(观察者)
- linux命令应用—crontab每秒执行一次命令
- 微信红包(数组中出现次数超过一半的数字)----腾讯2016研发工程师编程题
- phped 自动换行快捷键
- OK6410 Qtopia4.4.3和tslib的移植
- git基础知识
- 常见设计模式之观察者模式(Observer)
- JAVA编程基础-变量和运算符
- Android6.0系统获getMacAddress()取Wifi和蓝牙Mac地址返回02:00:00:00:00:00解决办法
- nyoj 28 大数阶乘问题
- Android 蓝牙连接问题
- 下载指定网络验证码图片,并保存
- 无声的青春
- Ubuntu 14.04 ssh服务的配置——亲测方便可用
- ICML 2016上值得关注的论文