黑马程序员技术交流社区
标题:
对接收数组参数的成员方法进行反射
[打印本页]
作者:
hurryup
时间:
2013-11-21 23:37
标题:
对接收数组参数的成员方法进行反射
1.张老师在讲到用反射的方法去调用一个类中main方法时,我有点不明白,用类.main(参数)就行了啊,为什么要用反射的方式进行调用?
2.我发现用反射调用某个类的main方法时,没有给出目标类的名字,是如何做到的?如何关联的?
public class ReflectTest
{
public static void main(String[] args)
{
//普通方式调用main方法
//TestArguments.main(new String[]{"111","222","333"});
String startingClassName=args[0];
Method mainMethod=Class.forName(startingClassName).getMethod("main",String[].class);
//mainMethod.invoke(null,new String[]{"111","222","333"});//运行时报错,参数个数不对,原因见上面问题
mainMethod.invoke(null,new Object[](new String[]{"111","222","333"}));
}
}
作者:
零下五度的水
时间:
2013-11-22 01:17
1.反射调用可以通过传参实现,可以做成框架
普通方式只能实现调用指定类的main, 换一个类就要重写一次方法
2.他明显是通过public static void main(String[] args)的参数传参的啊
cmd是在编译的时候添加参数,eclipse是在运行的时候有个传参界面,视频里有吧
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2