看完abstract抽象类的模板设计模式,
import java.lang.System.*;
abstract class GetTime{
public final void getTime(){
long start=System.currentTimeMillis();
code();//不确定的功能部分,提取出来,通过抽象方法实现
long end =System.currentTimeMillis();
System.out.println("毫秒是:"+(end-start));
}
public abstract void code();
}
class SubDemo extends GetTime
{
public void code()
{
for(int y=0;y<1000;y++)
System.out.println("y");
}
public static void main(String[] args)
{
SubDemo d=new SubDemo();
d.getTime();
//
}
}
在SubDemo中定义main方法,编译失败
重新定义一个class A
class A
{
public static void main(String[] args)
{
SubDemo d=new SubDemo();
d.getTime();
//
}
}
编译就通过了.SubDemo已经实现了抽象类GetTime的方法,应该可以实例化的,为什么会编译失败呢? 作者: 柴乔军 时间: 2013-2-21 11:47
上面的方法没错吧。。。编译也没出错啊。
结果如下:
...
y
y
y
y
y
毫秒是:37作者: 陈圳 时间: 2013-2-21 12:04