模板方法模式,准备一个抽象类,将部分逻辑以具体方法以及具体构造器的形式实现

 

模板方法模式的结构:


 

抽象模板角色:定义一个或多个抽象操作,以便让子类实现,并实现了一个模板方法

具体模板角色:实现一个或多个抽象操作,每一个抽象模板角色都可以有任意多个具体模板角色与之对应。

 

package cn.tcl.test;

public abstract class MakeBox {
 public void doThis(){
  System.out.println("do this ......");
 }
 
 public void doThat(){
  System.out.println("do that ......");
 }
 
 abstract void addColor();
 
 public void generateBox(){
  doThis();
  addColor();
  doThat();
 }
}

package cn.tcl.test;

public class MakeRiceBox extends MakeBox {

 @Override
 void addColor() {
  System.out.println("add red color");
 }

}

package cn.tcl.test;

public class TemplateTest {

 /**
  * @param args
  */
 public static void main(String[] args) {
  MakeBox makeBox = new MakeRiceBox();
  makeBox.generateBox();
 }

}

 

posted on 2011-01-14 20:47  魔战  阅读(152)  评论(0编辑  收藏  举报