黑马程序员技术交流社区

标题: 模板方法设计模式--求运行一个程序需要的时间 [打印本页]

作者: 追逐    时间: 2014-3-14 13:34
标题: 模板方法设计模式--求运行一个程序需要的时间
/*
需求:获取一段程序运行的时间。
原理:获取程序开始和结束的时间并相减即可。

获取时间的方法。运用java。lang.System中的currentTimeMillis();方法

当代码完成优化后,就可以解决这类问题

这种方式就是模板方法设计模式

什么是模板方法呢?
定义功能时,功能的一部分是确定的,但是有一部分是不确定。而确定的部分在使用不确定的部分,
那么这时就将不确定的部分暴漏出去。有该类的子类去完成。
*/

//获取时间类  因其中函数是抽象的。所有类也定义为抽象类
abstract class GetTime {
       
        //定义一个获取时间的函数 因为其中内容确定了。所以方法设置为最终方法
        public final void getTime() {
                long start = System.currentTimeMillis(); //获取开始时间
                runCode(); //需要运行的程序
                long end = System.currentTimeMillis(); //获取结束时间
                System.out.println("运行时间是:" + (end - start));
        }
       
        //因为不知道要运行的内容是什么。所有把方法抽象化。
        abstract void runCode();
       
}

//定义输出内容的类
class SubTime extends GetTime {
        //重写父类抽象函数
        public void runCode() {
                for(int i = 0; i < 4000; i++) {
                        System.out.print(i);
                }
        }
}

//测试类
class HQTime {
        public static void main(String[] args) {
                SubTime st = new SubTime();
                st.getTime();
        }
}
作者: 2528870651    时间: 2014-3-14 17:59
还没学到这  还是顶一下 啊呵呵   加油!!
作者: 追逐    时间: 2014-3-15 13:55
恩恩。共同进步




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2