A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

class Test
{
      public static void main(String[] args)
         {
               for(String arg:args)
                   {
                       System.out.println(arg);
                    }
          }
}
class ReflectTest {
        public static void main(String[] args)
        {
                String startingClassName=arg[0];//这里的这个args[0]是从哪里得来的?是ReflectTest类中的args[]中得来的,还是从Test类中的args[]中得来的。
                Method mainMethod=Class.forName(startingClassName).getMethod("main", String[].class);
                mainMethod.invoke(null, new Object[]{new String[]{"111","222","2344"}});
        }
}

评分

参与人数 1技术分 +1 收起 理由
邵天强 + 1

查看全部评分

2 个回复

倒序浏览
ReflectTest类中的语句,并没调用其他类,所以是ReflectTest定义的args[]的第一个字符。(注释有问题的那一行是不是少写了一个s,args[0])
回复 使用道具 举报
陈丽莉 发表于 2012-12-28 01:08
ReflectTest类中的语句,并没调用其他类,所以是ReflectTest定义的args[]的第一个字符。(注释有问题的那一 ...

没有少写,就是这样的。。
前面是没想明白,后来想明白了,是在运行的时候ReflectTest设置默认值了;那个arg[0]就是设置的那个默认值的
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马