反射获取Java类的所有字段,包括所有父类中的字段。 类自身的字段可直接通过方法
getDeclaredFields()【获取所有修饰符字段】或者getFields()【获取public修饰的字段】获取, 但父类中的字段暂时没有发现直接获取的方式。
需要递归获取所有的父类, 然后获取他们的字段, 最终获取到类的所有字段。
如果要获取字段值, 则需要设置字段可访问即:field.setAccessible(true); field为reflect包下的Field类
案例1. 父类
2. 子类
3. 测试类,获取student类的所有字段
4. 结果输出
反射对象获取属性和值凭借成string 描述有些时候会用到把穿过来的对象用kv的形式拼接这个时候用反射就很不错
直接上代码总结,其实反射也不难,遇到什么多写几遍就好了
以上为个人经验,希望能给大家一个参考,也希望大家多多支持七叶笔记。