public static void main(String[] args)中String[] args的作用是什么?

为什么我忘记写String[] args,程序无任何报错,但却在eclipse运行改程序时候,自动运行上一个运行的java文件?run as里Java Application也是不可选的。
最新回答
长野初见

2024-11-22 09:39:32

是main方法的参数,如果你main方法中用到了args,那么就必须传参。
比如System.out.println(args[0]);那么你就必须传参才可以,传参的方法比如你用cmd 命令执行的时候,那就可以把要带的参数带在后面就可以了
追问
那我为什么没写String[] args run as里Java Application就是是不可选的呢?
追答
因为java默认的入口签名就是public static void main(String[] args),在开发工具里,会自动检测有没有这个签名,如果没有,就认为这不是一个有入口的方法,认为这是不可运行的,但是一个没有参数的方法是可以存在的,他可以是一个非入口类,所以是不会报错的
天边シ深海

2024-11-22 11:52:53

这是java程序的入口地址,java虚拟机运行程序的时候首先找的就是main方法.跟C语言里面的main()函数的作用是一样的.只有有main()方法的java程序才能够被java虚拟机欲行,可理解为规定的格式

对于里面的参数及修饰符
public:表示的这个程序的访问权限,表示的是任何的场合可以被引用,这样java虚拟机就可以找到main()方法,从而来运行javac程序

static:表明方法是静态的,不依赖类的对象的,是属于类的,在类加载的时候main()方法也随着加载到内存中去

void:main()方法是不需要返回值的
main:约定俗成,规定的
String[] args:从控制台接收参数
追问
还是没明白,为什么缺少String[] args就不能运行,run as里Java Application也是不可选的。