アンケートにお答えください。
おもしろい ふつう つまらない
97年10月13日
比についてのソフトが3つ完成した。
似たようなものをいくつか作成するので、Factory Methodを使って
最初に完成したのを再利用したら、変更点が少なくてよかった。
簡単に書くと以下のようだ。

 abstract class MondaiPanel extends Panel{...}
     class TasizanPanel extends MondaiPanel{..差分を書く.}

  class TokutenPanel extends Panel{
     TokutenPanel (SansuApplet sa){...}

  }
  abstract class SansuApplet extends Applet{
     TokutenPanel  tokutenPanel;
     MondaiPanel mondaiPanel;
          ....
     public void init(){
        tokutenPanel  =  new TokutenPanel(this);
        mondaiPanel  =  creatMondaiPanel(this);
        //ここを書き換えるのが重要
     }
     protected abstract MondaiPanel creatMondaiPanel(SansuApplet aplet);
     // createMondaiPanel を abstract として作っておく
  }
    class TasizanApplet extends SansuApplet{
        protected MondaiPanel createMondaiPanel(SansuApplet applet){
              return new TasizanPanel(applet);
       //ここで実体を書いて指定すればスーパークラスの
       //mondaiPanelにTasizanPanelが入っていく
        }
    }
こうすることによって,appletを一部変更して新しい物を作るとき、
NantokaPanel extends MondaiPanel{...}を作成することと、
NantokaAppletの中で、NantokaPanelを使用することを指定する
だけで引き算用・かけ算・比・割合・等々いろんなものがができてしまう。

こういう知識を教えてくれた、JavaHouse-Braewersに感謝。