反射获取对象成员的字段值,getFields()和getDeclaredFields()用法区别
来源:互联网 发布:导购网站源码 下载 编辑:程序博客网 时间:2024/06/11 18:47
用反射获取内部类的属性其实很简单。。我弄了半天才弄好,由于很弱智的原因啊,写此博文已吸取教训。
main方法是:
虽简单,但是太坑爹了,getFields()只能获取public的字段,包括父类的。
而getDeclaredFields()只能获取自己声明的各种字段,包括public,protected,private。
而我写的Characters类中的属性是在继承父类的,父类中是protected的,所以获取不到,这个弄了我半天!最后只要把父类的protected属性全改成public的就ok了啊。。
还有getFields()和getDeclaredFields(),返回的都是Field对象,获取名称直接field.getName(),但是属性值则是field.get(Object),这个object是该field所属的!!!
太坑爹了,绕了好多弯啊!!!不过这样却对反射获得字段有了深刻的理解。
具体代码如下:
还有其父类部分代码改过之后是:
main方法是:
阅读全文
0 0
- 反射获取对象成员的字段值,getFields()和getDeclaredFields()用法区别
- 反射获取对象成员的字段值,getFields()和getDeclaredFields()用法区别
- 反射获取对象成员的字段值,getFields()和getDeclaredFields()用法区别
- 反射获取对象成员的字段值,getFields()和getDeclaredFields()用法区别
- JAVA反射中的getFields()方法和getDeclaredFields ()方法的区别 关于获取类的字段有两种方式:getFields()和getDeclaredFields()
- Java反射 getFields()和getDeclaredFields()的区别
- Java反射 getFields()和getDeclaredFields()的区别
- Java反射 getFields()和getDeclaredFields()的区别
- Java反射 getFields()和getDeclaredFields()的区别
- Java反射 getFields()和getDeclaredFields()的区别
- Java反射 getFields()和getDeclaredFields()的区别
- Java反射 getFields()和getDeclaredFields()的区别
- getFields()和getDeclaredFields()的区别
- JAVA反射中的getFields()方法和getDeclaredFields ()方法的区别
- JAVA反射中的getFields()方法和getDeclaredFields ()方法的区别
- JAVA反射中的getFields()方法和getDeclaredFields ()方法的区别
- java反射---getDeclaredFields()与getFields()的区别
- Java反射 getFields()和getDeclaredFields()的区
- mybatis:元素内容必须由格式正确的字符数据或标记组成
- python 正则化
- Unity5 AssetBundle 打包代码和加载代码
- 欢迎页设置和访问静态资源
- 【14.4】c++ primer plus 课后编程答案
- 反射获取对象成员的字段值,getFields()和getDeclaredFields()用法区别
- Web开发之:Java与PHP的八大比较
- NDK提供的共享库(Prebuilt)
- 深入理解HTTP协议(转载)
- python 实现斯坦福机器学习实验2.1
- Oracle 中MERGE语句的用法(转载)
- Python抓取花瓣网高清美图
- 2017图灵杯问题D 简单的图形输出(dfs)
- 查看网页是否压缩gzip+编码方式