Object obj = method.invoke("list","123");
楼主的这句话错误了 要么改为 Object obj = method.invoke(list,"123");
但是这样改也没啥意义,我想你的意思应该是 用新定义的clazz类的实例即改成
Object obj = method.invoke(clazz.newInstance(),"123");
然后回到你的问题上来。以下是本人拙见,忘批评指正
由于jdk1.5是兼容jdk1.4的 而泛型是在1.5以后才出现的,所以虚拟机先去找jdk1.4的add方法 发现其参数类型是Objec
所以
Method method = clazz.getMethod("add",Object.class);就可以了 |