我们可以在Java中重载 main()方法吗?
Can we overload a main() method in Java?
推荐答案你可以重载 main()方法,但只有 public static void main(String [] args)。例如:
You can overload the main() method, but only public static void main(String[] args) will be used when your class is launched by the JVM. For example:
public class Test { public static void main(String[] args) { System.out.println("main(String[] args)"); } public static void main(String arg1) { System.out.println("main(String arg1)"); } public static void main(String arg1, String arg2) { System.out.println("main(String arg1, String arg2)"); } }这将始终打印 main(String [] args)当你从命令行运行 java Test ... 时,即使你指定了一个或两个命令行参数。
That will always print main(String[] args) when you run java Test ... from the command line, even if you specify one or two command-line arguments.
您可以自己从代码中调用 main()方法,当然 - 此时将应用正常的重载规则。
You can call the main() method yourself from code, of course - at which point the normal overloading rules will be applied.
编辑:请注意,您可以使用varargs签名,因为从JVM的角度来看,这是等效的:
Note that you can use a varargs signature, as that's equivalent from a JVM standpoint:
public static void main(String... args)更多推荐
我们可以重载Java中的main方法吗?
发布评论