您的位置:首页 > 其它

通过反射获取,修改对象变量

2015-09-28 18:23 405 查看
最近工作不是太忙,就把自己的笔记整理出来,分享一下。

这个是通过反射获取修改对象变量的,有需要的可以看看,大神绕道

//反射遍历修改变量
Field[] fidles=map.get(object.getMsgid()).getClass().getDeclaredFields();
Field[] fidlesother=object.getClass().getDeclaredFields();
Field field=null;
Field fieldother=null;
for (int i = 0; i < fidlesother.length; i++) {
field=fidles[i];
field.setAccessible(true);
for (int j = 0; j < fidles.length; j++) {
fieldother=fidles[j];
fieldother.setAccessible(true);
if(field.getName().equals(fieldother.getName())){
try {
field.set(map.get(object.getMsgid()), fieldother.get(object));
} catch (IllegalAccessException e) {
if(C.DBG){
Log.i("消息列表反射异常", "消息列表反射异常");
}
e.printStackTrace();
} catch (IllegalArgumentException e) {
if(C.DBG){
Log.i("消息列表反射异常", "消息列表反射异常");
}
e.printStackTrace();
}
}
fieldother.setAccessible(false);
}
fieldother.setAccessible(false);
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: