我刚开始学习Java而且我正在学习方法覆盖。我试图在eclipse中运行它时在程序中出错。该计划如下:
class Vehicle{
void run(){System.out.println("Vehicle is running");}
}
class Bike extends Vehicle{
public static void main(String args[]){
Bike obj = new Bike();
obj.run();
}
}
错误是:
错误:在类Vehicle中找不到主要方法,请将主方法定义为: public static void main(String [] args) 或者JavaFX应用程序类必须扩展javafx.application.Application
输出应该是:车辆正在运行。
我尝试输入语句" public static void main(String [] args)"之后"类车辆"但得到其他错误。我尝试了以下程序:
class Vehicle{
public static void main(String[] args){
void run(){System.out.println("Vehicle is running");}
}
}
class Bike extends Vehicle{
public static void main(String args[]){
Bike obj = new Bike();
obj.run();
}
}
然后,我收到以下错误:
线程中的异常" main" java.lang.Error:未解决的编译问题: 令牌上的语法错误" void",新的预期 run无法解析为某个类型 System.out无法解析为某种类型 语法错误,插入"标识符("完成MethodHeaderName 语法错误,插入")"完成MethodDeclaration 语法错误,插入";"完成MethodDeclaration 语法错误,插入"}"完成ClassBody 此方法需要正文而不是分号 令牌上的语法错误"}",删除此令牌
at Vehicle.main(Vehicle.java:3)
任何人都可以解释哪种方法可以插入主要方法'在上面的程序中。
提前谢谢。答案 0 :(得分:1)
这是错误的:
class Vehicle {
public static void main(String[] args){
void run(){System.out.println("Vehicle is running");}
}
}
你不能将方法定义嵌套在另一个方法中......比如...
你可以这样做:
public class Test {
public static void main(String args[]) {
Bike obj = new Bike();
obj.run();
}
}
class Vehicle {
void run() {
System.out.println("Vehicle is running");
}
}
class Bike extends Vehicle {
}
并确保您运行的类以启动应用程序是测试类(具有静态void main方法的类)
答案 1 :(得分:0)
第一次你是对的:
class Vehicle {
void run() {
System.out.println("Vehicle is running");
}
}
class Bike extends Vehicle {
public static void main(String[] args) {
Bike obj = new Bike();
obj.run();
}
}
这运行我刚测试过,这是我的输出:
Vehicle is running
Process finished with exit code 0
我可以建议你在跑步之前尝试做“干净和放大”。