JAVA 观察者设计模式

来源:互联网 发布:淘宝指数下线了怎么办 编辑:程序博客网 时间:2024/05/04 05:06
package org.observerdemo;import java.util.Observer;import java.util.Observable;public class Person implements Observer {public void update(Observable o,Object arg){System.out.println(o+"价格发生变化"+arg);}}



package org.observerdemo;import java.util.Observable;public class House extends Observable{private float price;public House(){}public void setPrice(float p){super.setChanged(); // 通知内容已经可以被修改this.price = p;super.notifyObservers(p); //通知所有的观察者已经改变}public String toString(){return "房子";}public float getPrice(){return this.price;}}


package org.observerdemo;public class ObserverDemo {/** * @param args */public static void main(String[] args) {// TODO Auto-generated method stubHouse h = new House();h.setPrice(6000.0f);Person p1 = new Person();Person p2 = new Person();Person p3 = new Person();h.addObserver(p1); //增加一个观察者h.addObserver(p2); //增加二个观察者h.addObserver(p3); //增加三个观察者h.setPrice(6000.0f); //要通知观察者内容已经被改变了}}


原创粉丝点击