黑马程序员技术交流社区
标题:
用反射调用方法问题
[打印本页]
作者:
菠萝鱼
时间:
2014-2-19 11:25
标题:
用反射调用方法问题
Method method = List.Class().getMethod("add", Object.class);
这句话意思是 利用反射得到List中的add方法,类型是Method。
method.invoke(object, "参数");
用这个method执行add方法,object:是不是代表这个含有这个方法的实例对象,意思就是method调用这个实例对象的add方法,如果此方法是静态的,就不需要这个实例对象了?
作者:
一年_Hei
时间:
2014-2-19 12:07
嗯,楼主说的是对的,不过楼主说的词不准,method是方法的实例对象。不是类型。object.class是这个add方法接收的参数类型
作者:
菠萝鱼
时间:
2014-2-20 10:16
谢谢。。。
作者:
白_蓝(八公)
时间:
2014-2-20 11:17
method.invoke(object, "参数");括号中告诉我们object是方法名,而对应的参数是方法中要加入的!而你调用的是list的方法。所以是代表含有这个方法的实例对象!而如果是静态的当然就不需要实例对象了,可以戒指调用了
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2