定义
模板方法模式是一种行为设计模式,它在一个方法中定义了一个算法的骨架,并允许子类为一个或多个步骤提供实现。这可以让子类在不改变算法结构的情况下,重新定义算法的某些步骤。
示例代码
以下是一个简单的Java代码示例,演示了模板方法模式的使用:
首先,我们定义一个抽象类,其中包含一个模板方法和一些抽象方法:
java
public abstract class AbstractClass {
// Template method
public final void templateMethod() {
primitiveOperation1();
primitiveOperation2();
concreteOperation();
}
// Primitive operations
public abstract void primitiveOperation1();
public abstract void primitiveOperation2();
// Concrete operation
public void concreteOperation() {
System.out.println("Concrete operation");
}
}
然后,我们创建一个具体类,继承自抽象类,并实现抽象方法:
java
public class ConcreteClass extends AbstractClass {
@Override
public void primitiveOperation1() {
System.out.println("Primitive operation 1");
}
@Override
public void primitiveOperation2() {
System.out.println("Primitive operation 2");
}
}
最后,在客户端代码中,我们可以使用这些类:
java
public class TemplateMethodPatternDemo {
public static void main(String[] args) {
AbstractClass abstractClass = new ConcreteClass();
abstractClass.templateMethod();
}
}
在这个例子中,TemplateMethodPatternDemo
类使用ConcreteClass
类来执行模板方法。