在《Head First 设计模式》这本书中,有观察者模式
可是我看里面写的,气象站的代码,觉得有问题。
观察者对象里包含了被观察对象,为什么update方法还要再传呢
public class CurrentCondition1Display implements Observer,DisplayElement { Observable observable;// ????????????? public CurrentCondition1Display (Observable observable) { this.observable = observable; observable.addObserver(this); } public void update(Observable observable, Object localeObj) { // ????????????? //在new观察者对象时,已经把主题对象传进来了呀 } /** * A class can implement the <code>Observer</code> interface when it * wants to be informed of changes in observable objects. * * @author Chris Warth * @see java.util.Observable * @since JDK1.0 */ public interface Observer { /** * This method is called whenever the observed object is changed. An * application calls an <tt>Observable</tt> object's * <code>notifyObservers</code> method to have all the object's * observers notified of the change. * * @param o the observable object. * @param arg an argument passed to the <code>notifyObservers</code> * method. */ void update(Observable o, Object arg); }