j**a问题

时间:2013.12.31 发布人:ls831008

j**a问题

已解决问题

谷歌ls831008用户在2013.12.31提交了关于“满江红j**a问题”的提问,欢迎大家涌跃发表自己的观点。目前共有1个回答,最后更新于2024-08-31T22:14:03。帮我看看哪有毛病:

importj**a.util.*;
importj**a.lang.reflect.*;

publicclassReflector{
publicstaticvoidmain(Stringargs[]){
Set<String>s=newh**ashSet<String>();
s.add(“foo”);
Iteratorit=s.iterator();
Methodm=it.getClass().getMethod(“hasNext”);
System.out.println(m.invoke(it));
}
}希望大家能够帮助她。

详细问题描述及疑问:帮我看看哪有毛病:

importj**a.util.*;
importj**a.lang.reflect.*;

publicclassReflector{
publicstaticvoidmain(Stringargs[]){
Set<String>s=newh**ashSet<String>();
s.add(“foo”);
Iteratorit=s.iterator();
Methodm=it.getClass().getMethod(“hasNext”);
System.out.println(m.invoke(it));
}
}期待您的答案,谢谢你帮我,祝你快乐,愿你事事如意 !

希望以下的回答,能够帮助你。

第1个回答

用户名:qgty问答m  

接口Iterator<E>
他的方法hasNext不是public的,所以invoke的时候会报错
另外,你的代码没有抛出异常,很有问题

importj**a.util.h**ashSet;
importj**a.util.Iterator;
importj**a.util.Set;

pub且地福负更licclassReflect阿胡夜or{
publicstaticvoid资面main(Stringargs[]){
Set<String>s=newh**ashSet<S益早黄达类tring>();
s.add("foo");
Iteratorit=s.iterator();
while(it.hasNex功回斗杆t()){
System.out.println(***.next());
}
}
}
这样可以直接用,为什么非要用反射剧样什呢