飞狐爷

  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理
import java.util.Observable;
import java.util.Observer;

public class Hello{
    public static void main(String args[]){

        House house = new House(57233.00);
        Member m1 = new Member("王老板");
        Member m2 = new Member("李老板");
        Member m3 = new Member("田老板");
        house.addObserver(m1);
        house.addObserver(m2);
        house.addObserver(m3);
        house.setPrice(800000);
    }
}
class House extends Observable{
    private double price;
    public House(double price){
        this.price = price;
    }
    public void setPrice(double price){
        if(price>this.price){
            super.setChanged();
            super.notifyObservers(price);
        }
        this.price = price;
    }
}
class Member implements Observer{
    private String name;
    public Member(String name){
        this.name = name;
    }
    @Override
        public void update(Observable o, Object arg) {
            // TODO Auto-generated method stub
            if(o instanceof House){
                if(arg instanceof Double){
                    double newPrice = (Double) arg;
                    System.out.println("房价上涨:" + newPrice + "," + this.name + "开始卖房。");
                }
            }
        }    
}

 

posted on 2016-08-24 17:03  飞狐爷  阅读(164)  评论(0编辑  收藏  举报