首页 文章

如何在方法覆盖中使用main方法?

提问于
浏览
-1

我刚刚开始学习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中找不到主方法,请将main方法定义为: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”上的语法错误,新的预期运行无法解析为类型System.out无法解析为类型语法错误,插入“Identifier”(完成MethodHeaderName语法错误,插入“)”以完成MethodDeclaration语法错误,插入“;”完成MethodDeclaration语法错误,插入“}”以完成ClassBody此方法需要在标记“}”上使用正文而不是分号语法错误,删除此标记

at Vehicle.main(Vehicle.java:3)

任何人都可以解释在上述程序中插入“主要方法”的正确方法 .

Thx提前 .

2 回答

  • 0

    这是错的:

    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

    第一次你是对的:

    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
    

    我可以建议您在跑步之前尝试“清理和构建” .

相关问题