模板方法适用于在一个程序中,一段代码确定,而另外一段代码不确定。
下面举例说明
如需要写一个获取一个程序代码运行时间时,可以先获取程序开始和结束的时间,再将两者相减即可
System.currentTimeMillis(); 为获取当前时间与1970年0时0点的差值,精确到毫秒
public abstract class GetTime //一个获取程序运行时间的工具类
{
public static long getTime() //工具类成员函数通常定义为static
{
long start = System.currentTimeMillis();
run(); //代码块运行时间
long end = System.currentTimeMillis();
return end-start;
}
public abstract void run(); //需要调用者重写这个函数
}
//使用时即可这样写
public class GetTimeDemo extends GetTime
{
public void run() //重写代码块
{
for (int i=0;i<10000;i++)
System.out.print(i);
System.out.println();
}
}
class TestDemo
{
public static void main(String []args)
{
System.out.println(GetTimeDemo.getTime());
}
}