一、定义:
定义一个操作的算法的骨架,而将一些步骤延迟到子类中。模板方法使得子类可以不改变一个算法的结构即可重定义改算法的某些特定步骤。
二、示例代码:
public abstract class AbstractClass {
public void templateMethod(){
method1();
method2();
}
public abstract void method1();
public abstract void method2();
}
public class ConcreateClass1 extends AbstractClass {
@Override
public void method1() {
}
@Override
public void method2() {
}
}
public class ConcreateClass2 extends AbstractClass {
@Override
public void method1() {
}
@Override
public void method2() {
}
}