模板设计模式:实现一个功能的时候,分成两部分,确定的和不确定的,确定的部分由当前类实现,不确定的部分
由子类实现的结果反过来影响确定的部分
实例:求一个程序运行的时间
分析:1.知道开始时间
2.运行的过程
3.结束的时间
public class Demo11 {
public static void main(String[] args) {
ZiTest ziTest = new ZiTest();
double time = ziTest.getTime();
System.out.println(time);
}
}
abstract class FuTest{
public abstract void function();
public double getTime() {
//1.知道开始时间
long statTime = System.nanoTime(); //获取的当前的系统时间,单位:纳秒
// 2.运行的过程
function();
// 3.结束的时间
long endTime = System.nanoTime();
return endTime-statTime;
}
}
class ZiTest extends FuTest{
public void function() {
for(int i=0;i<100;i++) {
System.out.println(i);
}
}
}
可以看一下自己电脑的性能,是否该换电脑了,吼吼吼