A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

遍历成员的变量用Feld field =declareFields[i]  而获得所有成员的变量却这样表示
Field[]declareFields=exampleC.getDeclareFields() 为什么这样啊 谁讲讲里面的却别啊 我看的有点迷惑 谢谢

2 个回复

倒序浏览
因为getDeclaredFields()方法返回的就是返回 Field 对象的一个数组,这些对象反映此 Class 对象所表示的类或接口所声明的所有字段。
返回的是 Field 的一个数组当然是 Field[] declareFields=exampleC.getDeclareFields() 这样表示了,  然后你要取得这个数组中的元素,而其中的元素类型是Field所以要Field field =declareFields[i]   这似乎和反射中没很大的关系 更觉得这像是个数组的问题,假如你认为数组学好了  那么就请看API查看下反射中(class类 java.long.class)的常用方法及返回类型……

评分

参与人数 1技术分 +1 收起 理由
admin + 1

查看全部评分

回复 使用道具 举报
Feld field =declareFields[i]  
Field[]declareFields=exampleC.getDeclareFields()
你写的这两个不冲突,是通向一个目标的两个步奏
你会发现你两行代码中declareFields这个是相同的,
也就是说,其实你第一行用的就是第二行代码的结果
也就是说你想遍历那么你就要先获取

回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马