模版方法模式(Template Method Pattern)

    模版方法模式是类的行为模式。准备一个抽象类,将部分逻辑以具体方法以及具体构造子的形式实现,然后声明一些抽象方法来迫使子类实现剩余的逻辑。不同的子类可以以不同的方法实现这些抽象方法,从而对剩余的逻辑有不同的实现。
简略类图:

模版方法模式(Template Method Pattern)

示例:
1、类图
模版方法模式(Template Method Pattern)
 
模版方法模式(Template Method Pattern)
 
2、java代码
AbstractClass抽象类:
package templateMethod.template;
abstract public class AbstractClass {
 public void templateMethod(){
  doOperation1();
  doOperation2();
  doOperation3();
 }
 protected abstract void doOperation3();
 protected abstract void doOperation2();
 private final void doOperation1() {
  System.out.println("doOperation1。。。。。。");
 }
}

 
ConcreteClass类:
package templateMethod.template;
public class ConcreteClass extends AbstractClass{
 protected void doOperation2() {
  System.out.println("doOperation2。。。。。。");
 }
 protected void doOperation3() {
  System.out.println("doOperation3。。。。。。");
 }
}

 
Client类:
package templateMethod;
import templateMethod.template.AbstractClass;
import templateMethod.template.ConcreteClass;
public class Client {
 private static AbstractClass template;
 public static void main(String args[]){
  template = new ConcreteClass();
  template.templateMethod();
 }
}