永发信息网

java中如何实现private反射获得对象字段值的

答案:1  悬赏:50  手机版
解决时间 2021-11-19 22:00
java中如何实现private反射获得对象字段值的
最佳答案
背景介绍:在一个Bean类中,需要通过反射机制获得private字段属性时,如果用通常获得步骤获得会报如下错误:java.lang.IllegalAccessException: Class Test can not access a member of class Bean with modifiers "private"at sun.reflect.Reflection.ensureMemberAccess(Reflection.java:57)at java.lang.reflect.Field.doSecurityCheck(Field.java:811)at java.lang.reflect.Field.getFieldAccessor(Field.java:758)at java.lang.reflect.Field.get(Field.java:228)解决如下代码实现代码:1.Bean.class内容如下:public class Bean {private String aa;}2.Test.class内容如下:public class Test {public static void main(String[] args) throws SecurityException, NoSuchFieldException, IllegalArgumentException, IllegalAccessException {Bean test = new Bean();Field f = Bean.class.getDeclaredField("aa");//其中,最关键的代码是://f.setAccessible(true);//这行代码把对象data上的name字段设置为public访问属性.f.setAccessible(true);System.out.println(f.get(test));System.out.println(f.get(test));}}运行Test类输出如下:nullt2
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
一年特权有没有必要买尼
大神求翻译私はあなたによくたい
java按钮位置
如何拆asus k455l的屏
小米7天无理由退货
篮球跳步急停持球突破怎么应用?
徐蛋哥生态农业科技(大连)有限公司怎么样?
想知道关于山东威高新闻很火的TPE输液器原料
怎么和前男友彻底了断
求助,T16000上的按键怎样设置成发送无线电
小夫妻婚后5天5夜没
32%的氢氧化钠的密度是多少?
如果又10万条学生成绩信息,怎么获取成绩最高
西装上那个什么平驳戗驳对西装有啥区别嘛?
昆明螺丝湾哪里有卖双保龄冲锋衣
推荐资讯
海泰克触摸屏都有正规的代理商吗?优购工品的
产妇难解小便吃什么好
超融合产品Nutanix和VMware vsan等类似的分布
谁可以借我三万,做什么都可以
多威跑鞋
整体形态如怪石奇峰,山峦叠嶂,恍如仙境意思
5.6x69.32+138.64x0.05+693.2x0.43怎么简算
y等于2加log二的十六分之一
ems全球邮政特快专递地址好找么,我有些事要
600米高楼墙体左右晃动有多少
巷兴小学地址在哪,我要去那里办事,
房价真崩了,还有人敢买吗
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?