设计模式(7)模板方法模式

一、定义:

定义一个操作中的算法骨架,而将算法的一些步骤延迟到子类中,使得子类可以不改变该算法结构的情况下重定义该算法的某些特定步骤。它是一种类行为型模式。

//模板方法抽象类
public abstract class AbstractClass {
    //模板方法
    public void templateMethod() {
        //子类可以共享的代码
        this.primitiveOperation1();
        this.primitiveOperation2();
    }
 
    public abstract void primitiveOperation2();
 
    public abstract void primitiveOperation1();
}
 
public class ConcrateClassA extends  AbstractClass{
    @Override
    public void primitiveOperation2() {
        System.out.println("实现A2");
    }
 
    @Override
    public void primitiveOperation1() {
        System.out.println("实现A1");
    }
}
public class ConcrateClassB extends AbstractClass {
    @Override
    public void primitiveOperation2() {
        System.out.println("实现B2");
    }
 
    @Override
    public void primitiveOperation1() {
        System.out.println("实现B1");
    }
}

你可能感兴趣的:(设计,设计模式,模板方法模式,java)