ITPub博客

首页 > IT职业 > IT图书 > 观察者模式:观察者对象里包含了主题对象,为什么update方法还要再传

观察者模式:观察者对象里包含了主题对象,为什么update方法还要再传

IT图书 作者:danan 时间:2021-09-09 10:37:16 0 删除 编辑

在《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);
}



来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/2844/viewspace-2824248/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2019-08-16

  • 博文量
    76
  • 访问量
    414