黑马程序员技术交流社区

标题: 多层继承报错 求解 [打印本页]

作者: java--周群    时间: 2013-11-20 19:58
标题: 多层继承报错 求解
class A
{

  void show1()
   {

      System.out.println("show1 run");
   }

}


class B extends A
{

   void show2()
    {
     System.out.println("show2 run");
    }
   

}


class C extends B
{
    void show3()
     {
       System.out.println("show3 run");
     }

   


}


class Extends
{
   public static void main(String[] args)
     {
       C.a = new C();
       a.show1();
     }

}


如上代码,报错
Extends.java:41: 错误: 找不到符号
       C.a = new C();
        ^
  符号:   变量 a
  位置: 类 C
Extends.java:42: 错误: 找不到符号
       a.show1();
       ^
  符号:   变量 a
  位置: 类 Extends
2 个错误
作者: @ne_pie尒ce    时间: 2013-11-20 20:07
C.a = new C();这里错了
应该写 C a = new C();去掉C与a之间的点
哪有你这样定义类的引用的。

作者: wjj410830911    时间: 2013-11-20 20:17
  1. package 第17天的作业;

  2. class A
  3. {

  4.   void show1()
  5.    {

  6.       System.out.println("show1 run");
  7.    }

  8. }


  9. class B extends A
  10. {

  11.    void show2()
  12.     {
  13.      System.out.println("show2 run");
  14.     }
  15.    

  16. }


  17. class C extends B
  18. {
  19.     void show3()
  20.      {
  21.        System.out.println("show3 run");
  22.      }

  23.    


  24. }


  25. public class Extends
  26. {
  27.    public static void main(String[] args)
  28.      {
  29.        C a = new C();  //这里为什么要C.a?  应该是C空格 不是点a   C a=new C();
  30.        a.show1();
  31.      }

  32. }
复制代码
C.a 是类名点调用a方法  而你这里却是在创建对象
LZ太马虎了   注意下细节
作者: 陈文杰    时间: 2013-11-20 20:42
额,小白没事。新手都是这样过来的。仔细看视频,把定义方式背下来吧。
C.a = new C();这里错了
应该写 C a = new C();
作者: java--周群    时间: 2013-11-21 09:36
明白了,以后会注意




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