观察者模式
来源:互联网 发布:网络销售招聘可靠吗 编辑:程序博客网 时间:2024/06/03 22:51
观察者是Observer,
房子是可被观察的Observable ;
在java.util包中提供了Observable类和Observer接口。
package org.lxh.ObserDemo;
/**
* 观察者模式
* */
public class TestObserver{
public static void main(String args[]){
House h = new House(3300.0f);
Person per1 = new Person() ;
Person per2 = new Person() ;
Person per3 = new Person() ;
h.addObserver(per1) ;
h.addObserver(per2) ;
h.addObserver(per3) ;
h.setPrice(6000) ;
}
}
============
package org.lxh.ObserDemo;
import java.util.Observable;
import java.util.Observer;
public class Person implements Observer {
public void update(Observable arg0, Object arg1) {
System.out.println("*******被观察的操作有所更改**********");
}
}
========
package org.lxh.ObserDemo;
import java.util.Observable;
public class House extends Observable {
private float price ;
public House(Float price){
this.price = price ;
}
public float getPrice() {
return price;
}
public void setPrice(float price) {
super.setChanged() ; //
this.price = price;//一旦更改,则表示价格改变,实际上应该立即通知所有的观察这。
super.notifyObservers(); //通知所有的观察者 ,
}
}
- 观察者模式
- 观察者模式
- 观察者模式
- 观察者模式
- 观察者模式
- 观察者模式
- 观察者模式
- 观察者模式
- 观察者模式
- 观察者模式
- 观察者模式
- 观察者模式
- 观察者模式
- 观察者模式
- 观察者模式
- 观察者模式
- 观察者模式
- 观察者模式
- ASP.NET 中Session使用说明
- mysql的一些功能方法
- Linux设备驱动程式学习(10)-时间、延迟及延缓操作
- Ubuntu下Git配置学习笔记
- 139邮箱短信报警实现
- 观察者模式
- 软件开发质量管理和控制措施
- android平台下提高sqlite大容量数据存储效率
- page 30 repeating a task over time
- Android网络应用(第一部分)
- GridView + ViewFlipper布局界面,模仿“机锋市场”
- 一个 autoconf / automake 例子 --- 静态库、动态库 多源文件
- Linux下安装使用C/C++IDE开发工具 anjuta
- Linux设备驱动程序学习(11)-中断处理