黑马程序员技术交流社区

标题: 为什么 解释 [打印本页]

作者: 黑马17期-闫东东    时间: 2013-3-4 23:46
标题: 为什么 解释

class A
{
         static int number=2;
}

class B extends A
{
          int number = 6;

        public static  void show()
         {
                 System.out.println(super.number);//static和super冲突,为什么
         }
}


public class Demo
{
        public static void main(String []args)
         {
            B b = new B();

         b.show();
         }
}










作者: 谢玉成    时间: 2013-3-4 23:58
super代表父类,当你在创建B类实例时,静态方法都已经先加载到内存了,而这时还都还没创建好父类,也就不能使用super;
  所以静态方法里不能出现this ,super .....





欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2