读书人

观察者模式Observer的例证

发布时间: 2012-11-10 10:48:50 作者: rapoo

观察者模式Observer的例子

import java.util.*;public class product extends Observable{    private float price;////价格   public float getPrice(){ return price;}   public void setPrice(float price){   this.price=price;   setChanged(); ////设置变化点   notifyObservers(new Float(price));    }}

import java.util.*;public class PriceObserver implements Observer{   private float price=0;   public void update(Observable obj,Object arg){     if (arg instanceof Float){      price=((Float)arg).floatValue();     System.out.println("PriceObserver :price changet to "+price);     }   }}

public class Test {   public static void main(String args[]){ Product product=new Product(); PriceObserver priceobs=new PriceObserver(); ////加入观察者 product.addObserver(priceobs); product.setPrice(9.22f);    }}

运行结果:
C:\java>java? Test
PriceObserver :price changet to 9.22

读书人网 >软件架构设计

热点推荐