我们今天早上讨论了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();
}
}
答案 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();
作为旁边节点:请启动类名大写。 N4Wheels
,MultiWheels
等......
答案 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();