比如publib static void main(String[] args){}
参数args有什么作用,是数组吗?还是可变参数?mian方法是JVM在调用吗?类加载时具体怎么处理?

解决方案 »

  1.   

    args 就是一个数组名,可以从命令行中敲一些参数传进去
    main是JVM在运行的时候自动找到的
      

  2.   

    就是 java XXX dsda asdfa dads daf
    java -jar XXX.jar dsda asdfa dads dafXXX 或 XXX.jar 后的输入会被jre处理成 main的参数 args
      

  3.   

    形式上args不是可变参数,实质是一个字符串数组,但实质上字符串数组的长度是由用户执行java文件指定的,类似可变参数,给你举个例子public class ArgsDemo {
        public static void main(String[] args) {
            System.out.println("args:"+ Arrays.toString(args));
        }
    }编译这个文件之后,运行的时候不是java ArgsDemo而是java ArgsDemo a b c 
    这个时候就能发现输出args:[a, b, c],也就是后面多的a b c自动存入了args里面