• 模板方法模式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();
        }
    }
    

      

    ---------------------------------------------------------
    学如不及,犹恐失之
  • 相关阅读:
    ibatis报错
    struts配置时遇到的几个问题
    快乐工作,快乐生活
    浅谈协方差矩阵理解篇
    类成员变量初始化
    类对象所占内存空间总结
    const 成员函数
    Qt对话框QDialog
    const引用返回值
    Qt 对象间的父子关系
  • 原文地址:https://www.cnblogs.com/noKing/p/java_design_patterns_Template_Method.html
Copyright © 2020-2023  润新知