zoukankan      html  css  js  c++  java
  • 设计模式-模板方法模式

    模板方法:

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

    /**
     * 模板方法模式
     */
    public class TemplateMethod {
        public static void main(String[] args) {
            AbstractClass subClass1 = new SubClass();
            subClass1.operation();
            AbstractClass subClass2 = new SubClass2();
            subClass2.operation();
        }
    }
    
    abstract class AbstractClass{
        public void operation(){
            // open
            System.out.println(" pre ...");
            System.out.println(" step1 ...");
            System.out.println(" step2 ...");
            templateMethod();
            //.....
        }
    
        protected abstract void templateMethod();
    }
    
    class SubClass extends AbstractClass{
    
        @Override
        protected void templateMethod() {
            System.out.println("SubClass executed");
        }
    }
    
    class SubClass2 extends AbstractClass{
    
        @Override
        protected void templateMethod() {
            System.out.println("SubClass2 executed");
        }
    }
  • 相关阅读:
    C语言寒假大作战02
    C语言寒假大作战01
    学习总结
    C语言I作业11
    C语言I作业10
    C语言I博客作业09
    C语言I作业08
    实验五、单元测试
    实验四 代码审查
    UML 建模工具的安装与使用
  • 原文地址:https://www.cnblogs.com/chenfx/p/14791897.html
Copyright © 2011-2022 走看看