实现观察者模式,需要两个关键类
Observable:表示需要被观察的对象
Observer:观察者,真正去监控的对象
public class ObserverDemo { static class Product extends Observable { private Double price ; public Double getPrice() { return price; } public void setPrice(Double price) { this.price = price; this.setChanged(); this.notifyObservers(price); } } static class ProductObserver implements Observer{ @Override public void update(Observable o, Object arg) { System.out.println("目标对象变化为=" + arg); } } public static void main(String[] args) { Product product = new Product() ; ProductObserver observer = new ProductObserver() ; //加入观察者 product.addObserver(observer); //变化后,观察者会感知到并处理 product.setPrice(1D); product.setPrice(2D); } }
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)