概念:定义一个操作中的算法的骨架,而将一些步骤延迟到子类中。模板方法使得子类可以不改变一个算法的结构即可重定义该算法的某些特性步骤。
模板方法结构图
java代码:
public class TemplateMethodTest {
public static void main(String[] args) {
AbstractClass concreteClass = new ConcreteClass();
concreteClass.TemplateMethod();
}
}
//骨架
public abstract class AbstractClass {
public abstract void PrimitiveOperation1();
public abstract void PrimitiveOperation2();
public void TemplateMethod(){
PrimitiveOperation1();
PrimitiveOperation2();
}
}
//实现类
public class ConcreteClass extends AbstractClass {
@Override
public void PrimitiveOperation1() {
System.out.println("方法1");
}
@Override
public void PrimitiveOperation2() {
System.out.println("方法2");
}
}