黑马程序员技术交流社区

标题: 反射的问题 [打印本页]

作者: 罗雪梅    时间: 2012-10-20 21:41
标题: 反射的问题
本帖最后由 罗雪梅 于 2012-10-21 09:34 编辑

Method mm=cc.getMethod("add");
add这个方法在ArrayList集合中肯定是存在的,但是为什么我这样写,程序报错,提示的就是说找不到方法异常,然后后面跟着就是java.lang.arraylist.add()谁知道是这怎么回事呢

作者: 汪小照    时间: 2012-10-20 22:37
你把原代码贴上去好吗?然后我可以运行一下,看看错误具体在哪
作者: 杜正华    时间: 2012-10-20 23:20
Class cc = Class.forName("java.util.AbstractList"); //java.util.AbstractList写成了java.lang.arraylist
cc.getMethod("add",Object.class); //add方法有参数
作者: 王自强    时间: 2012-10-20 23:33
API上的
Method getMethod(String name, Class<?>... parameterTypes)
          返回一个 Method 对象,它反映此 Class 对象所表示的类或接口的指定公共成员方法。
你的参数列表有错
Method mm=ArrayList.class.getMethod("add",Object.class);
作者: 罗雪梅    时间: 2012-10-21 09:34
杜正华 发表于 2012-10-20 23:20
Class cc = Class.forName("java.util.AbstractList"); //java.util.AbstractList写成了java.lang.arraylis ...

是这个了,加个参数,api上我看写的是E e,以为就不用写参数了呢,原来这个也是个参数
作者: 杜正华    时间: 2012-10-21 09:51
正常思路你建立ArrayList的对象调用add方法肯定要加参数喽~
你这里想得到它的无参add方法肯定不行了。。。




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