黑马程序员技术交流社区

标题: 主函数被jvm调用时传的参数是什么? [打印本页]

作者: zhrnghgwsws    时间: 2014-5-24 18:21
标题: 主函数被jvm调用时传的参数是什么?
主函数是被jvm调用的,我们知道调用一个函数都要往里边传与之相对应的参数(实际参数),那么jvm调用main时,参数传的是什么呢?
作者: 13556793092    时间: 2014-5-24 18:22
传的参数是(String[] args)  哈哈
作者: never615    时间: 2014-5-24 20:47
传的是长度为零的字符串 像""这样
null表示字符串指向任何东西时候调用方法会出现空指针异常
而""表示指向长度0字符串时候调用方法安全
作者: 丁绍然    时间: 2014-5-24 20:53
毕老师讲过是空参数,是个空的字符串数组,String argu后面的argu可以随便写成别的
作者: yinxjfly    时间: 2014-5-24 23:42
长度为零的字符串数组!
作者: java木    时间: 2014-5-25 00:13
你想传什么可以自己决定,参数会存在 String【】args 数组里。
作者: yinxjfly    时间: 2014-5-25 00:31
class MainDemo
{
        public static void main(String[] args)
        {
                //System.out.println(args);//打印的结果:[Ljava.lang.String;@15db9742
                //System.out.println(args.length);//字符串数组长度为0,
                //System.out.println(args[0]);//java.lang.ArrayIndexOutOfBoundsException
               


                        /*String[] arr={"hha","hhe","hiahia"};
                        System.out.println(arr.length);
                        MainTest.main(arr);*/
                        /*System.out.println(args.length);
                        for(int x=0;x<args.length;x++)
                                System.out.println(args[x]);*/
        }
}
class MainTest
{
        public static void main(String[] args)
        {
                for(int x=0;x<args.length;x++)
                        System.out.println(args[x]);
        }
}
分批打开注解,编译MainDemo后运行,会得到对应的注释。
说明,在默认情况下 jvm在调用主函数时,传入的是new String[0];
当然,也可通过虚拟机直接在传递参数给主函数,举例格式:编译步骤不变;在运行时:java  MainDemo  参数列表 (传入过个参数,中间使用空格隔开)

还可以在程序内定义好一个字符串数组,直接传递给需要被调用的主函数!






作者: zhrnghgwsws    时间: 2014-5-25 00:40
恩。yinxjfly 同学说的很全面,学习了。。
作者: 少先队员    时间: 2014-5-25 01:48
参数你可以随便定义  不一定就要写 args
作者: yinxjfly    时间: 2014-5-25 13:11
少先队员 发表于 2014-5-25 01:48
参数你可以随便定义  不一定就要写 args

是的是的!参数名称可以自己重新定义!但是为了规范起见(至少显得比较顺眼),用args还是不错的!:lol
作者: yinxjfly    时间: 2014-5-25 13:14
yinxjfly 发表于 2014-5-25 00:31
class MainDemo
{
        public static void main(String[] args)

多谢版主!第一次得到技术分,心情你懂的!:)




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2