Java 设计模式_模板模式

来源:互联网 发布:怎么在淘宝举报店铺 编辑:程序博客网 时间:2024/06/05 01:51

Java 设计模式_模板模式


本文由 Luzhuo 编写,转发请保留该信息.
原文: http://blog.csdn.net/Rozol/article/details/76285939


定义一个算法(程序)的骨架, 从而让子类根据这个骨架实现剩余的逻辑

模板模式

/** * 抽象模板 * @author Luzhuo */public abstract class Time {    public long getCodeTime(){        long start = System.currentTimeMillis();        code();        long end = System.currentTimeMillis();        return end-start;    }    protected abstract void code();}
  • 定义一个抽象模板, 这是一个算法(程序)的骨架, code在(getCodeTime)中被执行的位置是已经确定了的, 子类只能继承并实现剩余未实现的方法(code)
/** * 具体模板 * @author Luzhuo */public class TestTime extends Time{    public void code(){        for(int x = 0; x<10000;x++){            System.out.println(x);        }    }}
  • 我在code里实现了循环10000次输出的逻辑

使用

public class Test {    public static void main(String[] args) {        TestTime test = new TestTime();        System.out.println(test.getCodeTime());    }}
  • 当我们调用test.getCodeTime()的时候, getCodeTime会依据逻辑顺序执行自身和code()的代码, 如果code里进行的是耗时操作, 那么这个方法将会执行很长时间
原创粉丝点击