这里我希望能够有一个类用来专门测试我程序运行的时间,需要计算时间我们可以用到System包中的currentTimeMillis函数,可以在程序入口处记一下时间,出口处也记一下(运行时间每次都会有所偏差),然后求其差值。但是我希望这个类将来可以适用于所有代码,而不用再特地修改类中的源码,于是运用我们可以定义一个抽象方法RunCode(),以后的代码我们都用这个抽象的方法表示,而那个测试时间的方法我们不希望子类能够修改它而引发不必要的误会和误用,于是我们将其定义为最终类防止“后人”对其的覆盖。以后的类需要用到这个时间测试方法的时候都可以继承这个类从而提高了整个代码的复用性。
下面是测试代码运行时间的抽象类:
package Test03;
public abstract class ExeRunTime {
//currentTimeMillis 获取1970年1月1日0时间0分0秒到目前的毫秒数
public final void getTime(){
long start=System.currentTimeMillis();
RunCode();
long end=System.currentTimeMillis();
System.out.println("毫秒:"+(end-start));
}
public abstract void RunCode();
}
测试代码类:
package Test03;
public class TestCode extends ExeRunTime{
public void RunCode()
{
for(int i=0;i<1000;i++){
System.out.println(i);
}
}
}
Main:
package Test03;
public class TestMain {
public static void main(String[] args) {
TestCode p=new TestCode();
p.getTime();
}
}