A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

这是今天讲system类时老师提出的问题。统计任意方法执行所用时间很简单,关键是如何封装成方法?让她能用来统计任意方法的执行时间呢??????求大神指点一二

2 个回复

倒序浏览
自顶,没学反射映射啥的
回复 使用道具 举报
现在回复应该来不及了。。。就当练手了,用模版方法实现:先定义一个抽象类,定义计算时间的方法,其中具体的执行方法抽象化,留给子类实现
[mw_shl_code=java,true]public abstract class GetTime {//抽象类
                public  void getTime(){
                        long t1 = System.currentTimeMillis();
                        method();//要计算时间的方法
                        long t2 = System.currentTimeMillis();               
                        System.out.println("运行时间: " + (t2 -t1));
                }
                public abstract void method( ) ;
}[/mw_shl_code]
[mw_shl_code=java,true]public class TestGetTime {

        public static void main(String[] args) {
                new GetTime() {
                        @Override
                        public void method() {
                                test();// 调用测试方法
                        }
                }.getTime();
        }

        private static void test() {// 测试用方法
                for (int i = 0; i < 10; i++) {
                        try {
                                Thread.sleep(500);
                        } catch (InterruptedException e) {
                                e.printStackTrace();
                        }
                        System.out.println(i);
                }
        }

}[/mw_shl_code]
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马