【发布时间】:2016-01-31 23:28:49
【问题描述】:
我不是在问什么是 (String args[]),因为这里已经回答了这个问题:What is "String args[]"? parameter in main method Java。
我的问题是为什么在写main()的时候还要写?
我参加了实践考试,遇到了一个问题,并意识到我在写public static void main() 时没有写String args[]。但是写完main(String args[])之后问题就解决了。 (如何以及为什么我仍然不知道!)
就在同一天,我在 Viva 中被问到 - “在写 main() 的同时有必要写这个 String args[] 吗?”由于发生的错误,我回答“是”,但在被问到“为什么?”时没有回答。
所以我想知道为什么要写String[] args。
【问题讨论】:
-
检查here
-
适用的关键字是方法签名。
-
注意也可以写
String... args -
main(String[] args)在设计上是 Java 应用程序的入口点。此方法还用于处理在控制台中传递的潜在参数,例如java YourClass foo bar(foo和bar将在args表中结束)。没有这种方法,Java 将不知道从哪里开始。即使您创建像main()这样的方法,它也不会与main(String[] args)相同,因此您将无法启动您的应用程序,尽管在您的类中允许使用这种方法,因为您可以拥有其他类,只需添加类似的代码main(String[] args){YourClass.main();}从您的mian()调用代码。 -
当你运行一个程序时,你可以给它命令行参数。您需要一种将这些命令行参数传递给程序的方法,这是一种简单的方法。它与 JVM 自身的调用方式等价于 Java。你能解释一下你的疑问吗?