Java 中的 main 方法是必须的吗?


要编译程序,您实际上并不需要程序中的 main 方法。但是,在执行过程中,JVM 会搜索 main 方法。在 Java 中,main 方法是程序的入口点,每当您在 Java 中执行程序时,JVM 都会搜索 main 方法并从该方法开始执行。

main 方法必须是 public、static,返回类型为 void,并且参数为 String 数组。

public static int main(String[] args){
}

您可以在不定义 main 的情况下编写程序,它可以在没有编译错误的情况下进行编译。但是,当您执行它时,会生成一个运行时错误,提示“未找到主方法”。

示例

在下面的 Java 程序中,我们有两个同名方法(重载)addition,并且没有 main 方法。您可以毫无编译错误地编译此程序。

public class Calculator {
   int addition(int a , int b){
      int result = a+b;
      return result;
   }
   int addition(int a , int b, int c){
      int result = a+b+c;
      return result;
   }
}

运行时错误

但是,当您尝试执行此程序时,将会生成以下错误。

D:\>javac Calculator.java

D:\>java Calculator
Error: Main method not found in class Calculator, please define the main method as:
   public static void main(String[] args)
or a JavaFX application class must extend javafx.application.Application

要解决此问题,您需要在此程序中定义 main 方法并调用类的其他方法。

public class Calculator {
   int addition(int a , int b){
      int result = a+b;
      return result;
   }
   int addition(int a , int b, int c){
      int result = a+b+c;
      return result;
   }
   public static void main(String args[]){
      Calculator obj = new Calculator();
      System.out.println(obj.addition(12, 13));
      System.out.println(obj.addition(12, 13, 15));
   }
}

输出

25
40

更新时间: 2019-07-30

3K+ 次查看

启动您的 职业生涯

通过完成课程获得认证

开始学习
广告