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");
        }
    }
  • 相关阅读:
    Java 之Integer相等比较
    Java 之HashMap.values()方法误用
    Java 异常归纳总结
    MySQL之GROUP BY用法误解
    Java 类的成员初始化顺序
    十三、java_GUI
    十二、java_网络编程
    十一、java线程
    十、java_IO
    九、java容器
  • 原文地址:https://www.cnblogs.com/chenfx/p/14791897.html
Copyright © 2011-2022 走看看