模板方法设计模式

来源:互联网 发布:2017中国人工智能排名 编辑:程序博客网 时间:2024/05/17 00:12
/** * 模板方法模式 需求: 计算1000个整数和1000个字符串相连接的耗时时间. 操作模板类:提供了统一的算法骨架 *  * @author wh *  */public abstract class OperateTemplete {    public final long getTotalTime() {        long begin = System.currentTimeMillis();        doWork();        long end = System.currentTimeMillis();        return end - begin;    }    /**     * 专门留给子类实现的方法(不同的子类实现的细节不同)     */    abstract protected void doWork();}/** * 操作int值的类 *  * @author wh *  */public class OperateInt extends OperateTemplete {    @Override    protected void doWork() {        int total = 0;        for (int i = 0; i < 1000; i++) {            total = total + i;        }    }}/** * 操作字符串的类 *  * @author wh *  */public class OperateString extends OperateTemplete {    @Override    protected void doWork() {        String str = "";        for (int i = 0; i < 1000; i++) {            str = str + i;        }    }}public class TestTemplate {    public static void main(String[] args) {        OperateString os = new OperateString();        System.out.println(os.getTotalTime());        OperateInt oi = new OperateInt();        System.out.println(oi.getTotalTime());    }}
0 0
原创粉丝点击