黑马程序员技术交流社区

标题: 高新中数组反射的问题 [打印本页]

作者: yp324    时间: 2013-6-4 17:01
标题: 高新中数组反射的问题
本帖最后由 yp324 于 2013-6-4 19:55 编辑

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"}});
        }
}


作者: 风乐    时间: 2013-6-4 17:42
是ReflectTest类中的args[]中得来的,意思就是你把Test作为参数传给 ReflectTest类的main函数,
Method mainMethod=Class.forName(startingClassName).getMethod("main", String[].class);这一句中的forName()方法后得到的就是Test.class,等于是Test.class.getMethod()




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