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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 袁计艳 中级黑马   /  2012-4-1 09:29  /  1776 人查看  /  2 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

ReflectPoint pt1 = new ReflectPoint(3,5);
Field fieldY = pt1.getClass().getField("y");
//fieldY的值为什么不是5

2 个回复

正序浏览
这样理解吧,其实不是pt1取出的Y,是ReflectPoint .class取出的,这个字节码与pt1一点关系没有,pt1可以取出ReflectPoint .class,其他的对象
如pt2,pt3都可以取出ReflectPoint .class。实际是ReflectPoint .class.getField("y");
这样得出的值怎么可能和对象相关呢?
所以要fieldY.get(pt1)取出Y
回复 使用道具 举报
他本身就是是一个Field对象~~~可以使用fieldY.get(pt1)取出来
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马