黑马程序员技术交流社区

标题: 为什么运行会出现错误? [打印本页]

作者: 郑彬    时间: 2012-8-18 10:18
标题: 为什么运行会出现错误?
import java.util.*;
import java.lang.reflect.*;
public class CSDN {   
public static void main(String args[]) throws Exception{
Set s = new HashSet();      
s.add("foo");      
Iterator it = s.iterator();   
//Class[] argsClass = new Class[0];  
Method m = it.getClass().getMethod("hasNext");     
System.out.println(m.invoke(it));  
}
}
为什么运行会出现错误?

作者: 周世阳    时间: 2012-8-18 11:02
本帖最后由 周世阳 于 2012-8-18 11:04 编辑

访问位于其他包中的非公共类型的成员方法是不合法的。
加上暴力反射即可m.setAccessible(true);
作者: 郑彬    时间: 2012-8-19 17:01
问题已经解决




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