在Java中,字符串args[]替换为int args[]时会发生什么情况?

在Java中,字符串args[]替换为int args[]时会发生什么情况?,java,Java,当主函数的参数 public static void main(String args[]) 被替换为 public static void main(int args[]) 有人试图运行它吗?如果将方法public static void mainString args[]更改为public static void mainit args[],但程序编译成功,则程序将永远不会运行 公共静态字符串参数[]基本上是初始点或入口点。如果将public static void mainString

当主函数的参数

public static void main(String args[])
被替换为

public static void main(int args[])

有人试图运行它吗?

如果将方法public static void mainString args[]更改为public static void mainit args[],但程序编译成功,则程序将永远不会运行

公共静态字符串参数[]基本上是初始点或入口点。如果将public static void mainString args[]与public static void mainString args[]一起写入,则它是main的重载函数。编译器始终在寻找用于启动程序的公共静态字符串参数[]。若并没有找到这个方法,那个么在运行时程序会给你们一个错误

这就是为什么方法的签名总是:

public static void main(String args[])

这是main方法的访问修饰符。它必须是公共的,以便java运行时可以执行此方法。请记住,如果将任何方法设置为非公共的,则任何程序都不允许执行该方法,因此会应用一些访问限制。因此,这意味着主方法必须是公共的,它不会执行,因为这是语言设计者决定的。指定应如何准确定义主方法的签名

main方法必须声明为public、static和void。它必须指定一个声明类型为字符串数组的形式参数。因此,以下任一声明均可接受:

静态关键字和无效关键字也可以互换


这就是为什么将参数更改为int只会使主方法成为普通Java方法的原因。这意味着您的Java应用程序没有任何起点,即标准的main方法。

您所说的结果是什么意思?您的java程序将运行,但如果没有公共的静态无效主字符串args[]就没有任何起点,这意味着它的复杂性,但为什么它不是可执行的呢?最简单的就是尝试看看。。。
public static void main(String[] args)
public static void main(String... args)