【发布时间】:2013-05-03 09:15:20
【问题描述】:
当我看到 Java 程序时,很多人都会留下String args[],即使程序不使用它们。为什么是这样?有什么特别的吗?
【问题讨论】:
标签: java arguments command-line-arguments
当我看到 Java 程序时,很多人都会留下String args[],即使程序不使用它们。为什么是这样?有什么特别的吗?
【问题讨论】:
标签: java arguments command-line-arguments
String args[] 是 main 方法签名的一部分。如果你没有它,当你尝试运行代码时,你会得到下面的异常。
Exception in thread "main" java.lang.NoSuchMethodError: main
【讨论】:
Error: Main method not found in class tut21, please define the main method as: public static void main(String[] args) 所以我不知道你为什么可以运行它。你应该做不到。
如果是针对main(String[]),它是为了满足方法签名,因此至关重要。
【讨论】:
规范要求。
方法 main 必须声明为 public、static 和 void。它必须 指定一个声明类型为数组的形式参数(第 8.4.1 节) 细绳。因此,可以接受以下任一声明:
public static void main(String[] args)
public static void main(String...args)
【讨论】:
main 中的代码可能不会直接使用它,但它仍然是必需的。 'String args[]' 是传递任何命令行参数的地方。即使您传递了 0 个参数,也需要有一种方法可以对其进行验证。它也是JVM要求的main所需的签名。
【讨论】: