JavaでHello World
Google
  HOME  |  基礎  |  掲示板  |  ツール |  書籍  |  デザインパターン  |  リンク  |  フィードバック
JavaでHello World > デザインパターン > Template Methodパターン  
メニュー
Home
情報交換掲示板
Factory Method
Abstract Factory
Builder
Prototype
Singleton
Adapter
Bridge
Composite
Decorator
Facade
Flyweight
Proxy
Chain Of Responsibility
Command
Interpreter
Iterator
Mediator
Memento
Observer
State
Strategy
Template Method
Visitor
  2003/07/25  田中宏和
Template Methodパターン
◆概要
ある処理においてアルゴリズムのスケルトンを定義し、その中のいくつかのステップはサブクラスでの定義に任せる。Template Methodパターンはアルゴリズムの構造を変化させることなしにアルゴリズム中のあるステップをサブクラスで再定義させる
◆UML
◆ここでの環境
OS Windows XP
J2SE SDK 1.4.1_01
◆概念的なソースコード
AbstractClass.java(ここからダウンロード)
abstract class AbstractClass {
  abstract public void primitiveOperation1();
  abstract public void primitiveOperation2();

  public void templateMethod() {
    System.out.println("AbstractClass templateMethod()メソッド");

    primitiveOperation1();
    primitiveOperation2();
  }
}
ConcreteClass.java(ここからダウンロード)
public class ConcreteClass extends AbstractClass {
  public void primitiveOperation1() {
    System.out.println("ConcreteClass primitiveOperation1()メソッド");
  }

  public void primitiveOperation2() {
    System.out.println("ConcreteClass primitiveOperation2()メソッド");
  }
}
Client.java(ここからダウンロード)
public class Client {
  public static void main(String[] args) {
    ConcreteClass c = new ConcreteClass();
    c.templateMethod();
  }
}
 
◆実行
コマンドプロンプト
C:\JavaHello\Template Method>javac *.java

C:\JavaHello\Template Method>java Client
AbstractClass templateMethod()メソッド
ConcreteClass primitiveOperation1()メソッド
ConcreteClass primitiveOperation2()メソッド

C:\JavaHello\Template Method>

おおおお!実行できましたね!

 
 
  ネットで買えば断然お得!お買い物なら楽天市場
ツールの部屋 - Java関連の書籍 - デザインパターン - 情報交換掲示板 - HOME