Observerパターン

  1. 概要
     
    1. 問題
      Observerは観察対象の状態を表示するのが目的です。でも、観察対象の状態がいつ変化するのかわかりません。

       
    2. 手法
      観察対象が観察者に状態変化を知らせます。このため、観察者側に update メソッド を用意します。

  2. 例1 Obsserverインターフェース

    1. Obsserverインターフェース

      public interface Obsserver{
       public abstract void update (NumberGenerator gen);
      }

      public class GraphObserver implements Observer{
       public void update(NumberGenerator gen){
         //genからデータを読みとり、グラフ表示する 
       }
      }

    2. NumberGeneratorクラス
      数を生成し、Observerを update() します。
      Observerの追加を知るために
       vector observers=new Vector();
       observers.add(Observer obs)
      を、用意すると良いでしょう。