package java_test; /*需求:求一段代码运行所花时间 * 原理:结束时间-开始时间 System.currentTimeMillis() * 模板方法设计模式 * 定义功能是:功能的一部分是确定,儿确定的部分在使用不确定, * 那么这是就得将不确定的部分暴露出去,由该子类去完成 * */ abstract class Demo{ public final void getTime(){ long start=System.currentTimeMillis(); function(); long stop=System.currentTimeMillis(); System.out.println("共花费"+(stop-start)); } public abstract void function(); } class Tests extends Demo{ public void function(){ for(int i=0;i<10000;i++){ System.out.println("f"); } } } public class DM003 { public static void main(String[] args){ Tests t=new Tests(); t.getTime(); } }