本帖最后由 328078121 于 2013-8-29 14:23 编辑
/*
模板设计模式
计算程序运行时间。
用静态方式调用函数getTime(),子类复写runcode(),为什么两个运行结果一样!
自己知道这个涉及静态绑定,但是视频说的也不是很明白,在子类中已经复写了静态方法~~~~很蒙啊现在~
麻烦大神帮忙画下内存分配情况。
*/
class GetTime
{
public static final void getTime()
{
long start = System.currentTimeMillis();
runcode();
long end=System.currentTimeMillis();
System.out.println("毫秒:"+(end-start));
}
public static void runcode()
{
for(int x=0;x<=100;x++)
System.out.println(x);
}
}
class SubTime extends GetTime
{
public static void runcode()
{
for(int x=0;x<10000;x++)
System.out.println(x);
}
}
public class Template
{
public static void main(String[]agrs)
{
GetTime.getTime();//1-100
SubTime.getTime();//1-100 两个运行结果一样!
}
}
|