Java 是否可以重载主方法?

Java 是否可以重载主方法?,java,Java,是否可以重载主方法?如果是,jvm将从哪个方法开始执行?是。您可以重载main方法,但在执行类时将执行以下方法: public static void main(String[] args) 您可以重载main方法,但JVM总是使用以下签名启动main方法: public static void main(String[] args); 根据Java语言规范: 必须声明main方法 公共、静态和无效。它必须 接受一个单独的参数,该参数是 字符串数组 (12.1.4) 因此,将只执行重载的公共

是否可以重载主方法?如果是,jvm将从哪个方法开始执行?

是。您可以重载main方法,但在执行类时将执行以下方法:

public static void main(String[] args)

您可以重载main方法,但JVM总是使用以下签名启动main方法:

public static void main(String[] args);

根据Java语言规范:

必须声明main方法 公共、静态和无效。它必须 接受一个单独的参数,该参数是 字符串数组

(12.1.4)


因此,将只执行重载的
公共静态void main(String[]args)

是。main方法可以像Java中的任何其他方法一样重载


main的通常声明是

public static void main(String[] args) throws Exception;
启动java应用程序时,它会查找名为“
main
”的静态方法,返回类型“
void”
,以及字符串数组的单个参数。你扔的东西对解决这个问题不重要

重载提供了多个名称相同但参数不同的方法(可能返回类型)


根据上面的解释,我们可以重载main方法。

正如其他人所说,非常有可能,但执行总是从

public static void main(String[] args)
演示以下内容的小程序:

public class Test{

    public static void main(String [] args){
        System.out.println("First");
        main();
    }

    public static void main(){
        System.out.println("Second");   
    }
}
输出:

First Second 弗斯特 第二
是的,你可以。jvm足够聪明,可以在查看与主方法匹配且符合逻辑的方法声明时知道加载哪个方法。当您像“jvm”一样思考并想象主方法的作用(启动应用程序)时,主方法声明的部分就非常有意义了:

  • public
    ,因为jvm必须可以访问此方法(不是由您编写的)
  • static
    ,这意味着可以在没有对象的情况下访问此方法(因为它的表示形式永远不会改变),但是如果您再次像jvm一样思考,那么这里的逻辑很容易理解;“我没有任何对象来创建(实例化)对象,因此我需要一个静态方法来启动应用程序,因为还没有任何逻辑方法来创建特定于实例的方法,因为我还没有任何东西来创建对象”
  • void
    此方法在逻辑上无法返回任何内容,因为还没有要返回的内容。它是应用程序的起点
  • main
    我是主要方法,因为没有我,你就不会有应用程序
  • String[]args
    向我发送数据您可能会觉得对我的启动有用

    • 以字符串作为参数的main方法是程序的默认入口点。
      您可以重载,但它不会更改程序的入口点。

      嗯。。。这是一个家庭作业/测验问题吗?我想是的……同一个用户发布了另一个类似的问题。main的常用声明是“publicstaticvoidmain(String[]args)”,没有抛出异常。Main应该正确处理异常,而不是向用户显示堆栈跟踪!是的,一年前我在mea上被禁止提出一个非主题问题,这严重影响了我在这里的体验,因为我基本上被切断了与主站点的联系,无法提出与SO和姐妹站点的正确使用有关的问题。我通过联系他们提出了这个问题,但什么都没有发生。尽管当时我正在接受化疗,并从大型脑手术中恢复过来。最终,化疗/脑手术虽然是PITA,但与内容无关——这正是主持人和开发人员关注的(这是合理的)。你所能做的就是再试一次,我建议你这样做——最糟糕的情况是什么也没有发生。此外,我得到的回答是“改进我的问题”。如何改进删除的问题?通过编辑和投票重新打开,和/或标记版主的注意——答案也是如此。不过,关于答案,我会犹豫是否要对我们讨论过的最后几类老的、被接受的答案进行太多的尝试。我认为这可能是一个失败的事业,原因有很多。