A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 陈圳 高级黑马   /  2013-2-21 11:36  /  1157 人查看  /  2 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 陈圳 于 2013-2-21 12:14 编辑

看完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的方法,应该可以实例化的,为什么会编译失败呢?

2 个回复

倒序浏览
上面的方法没错吧。。。编译也没出错啊。
结果如下:
...
y
y
y
y
y
毫秒是:37
回复 使用道具 举报
柴乔军 发表于 2013-2-21 11:47
上面的方法没错吧。。。编译也没出错啊。
结果如下:
...

谢谢了....原来公有类,类名写错了.
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马