我们可以改变 Java 中 main() 方法的返回类型吗?

java 8object oriented programmingprogramming

public static void main() 方法是 Java 程序的入口点。每当您在 Java 中执行程序时,JVM 都会搜索主方法并从中开始执行。

您可以在程序中编写返回类型不是 void 的主方法,程序会在编译时不会出现编译错误。 

但是,在执行时,JVM 不会将此新方法(返回类型不是 void)视为程序的入口点。

它会搜索公共、静态、返回类型为 void 且参数为 String 数组的主方法。

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

如果找不到这样的方法,则会生成运行时错误。

示例

在下面的 Java 程序中,我们尝试编写返回类型为整数的主方法 −

import java.util.Scanner;
public class Sample{
   public static int main(String[] args){
      Scanner sc = new Scanner(System.in);
      int num = sc.nextInt();
      System.out.println("This is a sample program");
      return num;
   }
}

输出

执行时,此程序会产生以下错误 −

Error: Main method must return a value of type void in class Sample, please
define the main method as:
public static void main(String[] args)

相关文章