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