为什么java仅允许主方法参数 String[] args
?即一系列字符串
public static void main(String[] args)
为什么java不允许int或double of like
public static void main(int[] args)
或
public static void main(double[] args
为什么它不允许单个字符串,int或float而不是字符串数组?类似:
public static void main(String args)
或
public static void main(int i)
这就是您在命令行中运行Java程序的方式:
java YourMainClass
命令行参数之后是:
java YourMainClass arg1 arg2 arg3
这将使args
字符串阵列包含"arg1"
,"arg2"
和"arg3"
。如果将args
数组变为int[]
,那么将arg1
放入int
?
从JVM的角度来看,将命令行参数放在String
S中是最安全的选项。用户输入的任何东西都必须是一堆char
根据JLS,
第12.1.4节:
最后,在完成初始化以进行课堂测试(在 其他结果负载,链接和初始化可能具有 发生了),调用了测试主管。
该方法主要必须被声明为公共,静态和空隙。它必须 指定一个正式参数(§8.4.1),其声明类型为数组 字符串。