继承java“找不到符号”

时间:2017-04-19 10:46:00

标签: java inheritance

我们今天早上讨论了java中的继承,但似乎我的代码中有错误而且我的教授无法帮助我,因为他很忙,你能帮助我指出我的错误吗?

package inheritance;

class Inheritance {

  void accelerate()
  {
    System.out.println("Drive");
  }

  void turn()
  {
    System.out.println("Turn!");
  }
}


class n2wheels extends Inheritance {


  void fast()
  {
    System.out.println("Swift Vehicle");
  }

}


class n4wheels extends Inheritance {


  void normal()
  {
    System.out.println("Average Vehicle");
  }


}


class multiwheel extends Inheritance {


  void slow()
  {
    System.out.println("Heavy Vehicle");


  }


  public static void main(String[] args)
  {
    Inheritance try1 = new Inheritance();
    try1.normal();
  }
}

3 个答案:

答案 0 :(得分:1)

normal课程中没有Inheritance方法。

至少做到:

class Inheritance {

    void accelerate() {
        System.out.println("Drive");
    }

    void turn() {
        System.out.println("Turn!");
    }

    void normal(){}
}

或:

n4wheels try1 = new n4wheels();
try1.normal();

作为旁边节点:请启动类名大写。 N4WheelsMultiWheels等......

答案 1 :(得分:0)

继承类

中不存在Normal()方法

答案 2 :(得分:0)

您无法调用此方法,因为它不存在于继承类中并存在于n4wheels类中。我不知道你想要达到的目标,所以我在下面为你提供可能的解决方案。

解决方案1:如果您只想在继承类中调用normal(),请在同一个类中声明它。

class Inheritance {

  void accelerate() {
    System.out.println("Drive");
  }

  void turn() {
    System.out.println("Turn!");
  }

  void normal() {
    // do something
  }
}

解决方案2:如果你想直接调用n4wheels类的normal()方法,那么:

n4wheels try1 = new n4wheels();
try1.normal();

解决方案3:如果要执行多态,那么必须在继承类中声明normal()方法,如解决方案1'然后,

Inheritance try1 = new n4wheels();
try1.normal();