zoukankan      html  css  js  c++  java
  • 模板方法模式Template Method(Java实现)

    模板方法模式-Template Method

    在模板模式中, 处理的流程被定义在父类中, 而具体的处理则交给了子类. 

    类关系图很简单:

    Template接口

    这里定义了子类需要实现的方法(before run after), 和执行事务的流程(execute).

    public interface Template {
        void before();
    
        void run();
    
        void after();
    
        default void execute() {
            before();
            run();
            after();
        }
    }

    TemplateImpl类

    这是一个模板的实现类.

    继承了父类, 实现了父类遗留下来的方法细节. 使用者通过调用execute方法即可按照父类指定的流程进行处理了.

    public class TemplateImpl implements Template {
        @Override
        public void before() {
            System.out.println("Before..");
        }
    
        @Override
        public void run() {
            System.out.println("run..");
        }
    
        @Override
        public void after() {
            System.out.println("after..");
        }
    }

    Main

    这里用于运行测试. 

    public class Main {
        public static void main(String[] args) {
            new TemplateImpl().execute();
    
            /*-********或者可以这样*********-*/
    
            new Template() {
                @Override
                public void before() {
                    System.out.println("运行之前..");
                }
    
                @Override
                public void run() {
                    System.out.println("运行中..");
                }
    
                @Override
                public void after() {
                    System.out.println("运行收尾..");
                }
            }.execute();
        }
    }
    

      

    ---------------------------------------------------------
    学如不及,犹恐失之
  • 相关阅读:
    Many Equal Substrings CF
    Seek the Name, Seek the Fame POJ
    人人都是好朋友(离散化 + 并查集)
    建设道路
    day_30
    day_29作业
    day_29
    day_28
    day_27
    day_26作业
  • 原文地址:https://www.cnblogs.com/noKing/p/java_design_patterns_Template_Method.html
Copyright © 2011-2022 走看看