设计模式之模板方法模式

模板方法模式:定义一个操作中的算法的骨架,而将一些步骤延迟到子类中。模板方法使得子类可以不改变一个算法的结构即可重定义该算法的某些特定步骤。

 

public abstract class AbstractTemplateMethod {
    public abstract void operationOne();

    public abstract void operationTwo();

    public void templateMethod() {
        operationOne();
        operationTwo();
        System.out.println("AbstractTemplate");
    }
}

 

public class ConcreteTemplateA extends AbstractTemplateMethod {
    @Override
    public void operationOne() {
        System.out.println("ConcreteTemplateA---operationOne");
    }

    @Override
    public void operationTwo() {
        System.out.println("ConcreteTemplateA---operationTwo");

    }
}

public class ConcreteTemplateB extends AbstractTemplateMethod {
    @Override
    public void operationOne() {
        System.out.println("ConcreteTemplateB---operationOne");
    }

    @Override
    public void operationTwo() {
        System.out.println("ConcreteTemplateB---operationTwo");
    }
}

 

public class AbstractTemplateMethodDemo {
    public static void main(String[] args) {
        AbstractTemplateMethod templateA = new ConcreteTemplateA();
        AbstractTemplateMethod templateB = new ConcreteTemplateB();
        templateA.templateMethod();
        templateB.templateMethod();
    }
}

 

posted @ 2017-10-12 19:46  emoji的博客  阅读(109)  评论(0编辑  收藏  举报