黑马程序员技术交流社区

标题: testMethod.invoke(null, new String[]{"1111","2222"}); [打印本页]

作者: 袁计艳    时间: 2012-3-31 23:26
标题: testMethod.invoke(null, new String[]{"1111","2222"});
Method testMethod = Class.forName(startingClassName).getMethod("test", String[].class);
testMethod.invoke(null, new String[]{"1111","2222"});
怎么理解更透彻些呢
作者: 梁锡伟    时间: 2012-3-31 23:44
静态方法。无需对象执行。
作者: 李涛涛    时间: 2012-4-1 09:51
invoke()方法中第一个参数为null说明执行的方法有静态修饰符
作者: foxpeter    时间: 2012-4-3 10:50
Class.forName(startingClassName)
加载类的字节码

getMethod("test", String[].class);
反射得到名为 test 参数为 String[] 的函数

testMethod.invoke(null, new String[]{"1111","2222"});  
invoke函数调用此方法,因为是静态方法,第一个参数传NULL ,如果不是静态方法 第一个参数就必须传一个这个类的对象




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