package com.qumibao.www;
//获取一段程序的运行时间。
/*
思路:
1.定义一个获取时间的抽象类
2.定义一个子类集成该抽象类。
2.定义一个方法。只需获取该程序的开始时间与结束时间并相减即可,由于时间长度不确定,用long类型来定义变量。
3.获取当前时间API中提供了System中的相关方法。 System.currentTimeMills();
*/
abstract class GetTime{
public void getTime(){
long start = System.currentTimeMillis();
runCode();//调用抽象方法代码。
long end = System.currentTimeMillis();
System.out.println();
System.out.println("毫秒:"+(end -start));
}
public abstract void runCode();
}
class SubTime extends GetTime{//定义子类对象继承GetTime父类对象
public void runCode(){//复写runCode()方法
for(int x=0;x<1000;x++){//执行代码块,获取该循环的执行时间。
System.out.print(x);//输出0-999之间的数值。
}
}
}
public class AbstractDemo {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
SubTime st = new SubTime();//定义子类对象。
st.getTime();//调用获取时间的方法。
}
}
总结:
体现代码的可操作性方面来针对模板设计模式。其中在本例子中代码固定范围为public abstract void runCode();方法对外提供运行的代码。由子类来进行实现。