java反射父类_Java反射获取对象全部属性,包括父类属性
获取类的属性有getFields和getDeclaredFields两个方法,简要说下两者区别:getFields 可以获取当前类及父类的所有public 属性,protect和private无法获取
getDeclaredFields 可以获取到当前类所有的public、protect、private属性
所以,要实现此功能只能使用getDeclaredFields。
当前类取完了,再class.getSuperclass找到父类,完了再爷爷类……public void printAllMembers(Object obj){
Class cls = obj.getClass();
while (cls != null && cls != Object.class){
Field[] fields = cls.getDeclaredFields();
for (Field fd : fields) {
if (!fd.isAccessible()) {
fd.setAccessible(true);
}
try {
Log.d("bg", fd.getName() + ": " + fd.get(obj));
} catch (IllegalAccessException e) {
e.printStackTrace();
}
}
cls = cls.getSuperclass();
}
Log.d("bg", "=====the end=====");
}
由于private不允许直接访问,需要调下setAccessible,否则会报错Method threw 'java.lang.IllegalAccessException' exception.
java反射父类_Java反射获取对象全部属性,包括父类属性相关推荐
- java反射之Field用法(获取对象的字段名和属性值)
一.概述 Field是一个类,位于java.lang.reflect包下.在Java反射中Field类描述的是类的属性信息,功能包括: 获取当前对象的成员变量的类型 对成员变量重新设值 二.如何获取F ...
- 【java】java反射机制,动态获取对象的属性和对应的参数值,并属性按照字典序排序,Field.setAccessible()方法的说明【可用于微信支付 签名生成】...
方法1:通过get()方法获取属性值 package com.sxd.test.controller;public class FirstCa{private Integer num;private ...
- java反射类型转换_Java反射探索研究(转)
林炳文Evankaka原创作品.转载请注明出处http://blog.csdn.net/evankakay 摘要:本文详细深入讲解是Java中反射的机制,并介绍了如何通过反射来生成对象.调用函数.取得 ...
- java 反射代价_Java反射机制
# 反射 ## 什么是反射 反射是Java提供的动态执行机制, 可以动态加载类, 动态创建对象, 动态访问属性, 动态调用方法.. 静态执行: Java代码经过编译以后就确定的执行次序, 称为静态执行 ...
- 获取对象的接口信息(方法/属性/事件)(VB6代码)
要不是WS的超级绿豆提起这东西,我还不知道呢.... 真是个好玩意!!能列出一个对象的接口,包括方法,属性,事件.....微软直接做了啊. 记录一下,以后要用到时免得忘了: Option Explic ...
- 父类指针指向子类对象的问题、父类对象和子类对象之间的问题
一.父类指针指向子类对象 先上代码: class Base {public:void base_fun1() {}virtual void base_fun2() {cout << &qu ...
- java反射基础_Java反射基础(一)--Class对象获取
ClassesJava中,任何一个对象要么是一个引用类型要么是基本数据类型.引用类型指的是那些直接或间接 Java.lang.Object的类.Classse,enum,和接口都是应用类型.基本类型是 ...
- java 反射 速度_Java 反射获取类方法速率和实现方式
今天突然想到Java反射.然后测试了一下1.8.0_191版本的反射性能,没想到反射竟然比直接调用性能还高. 反射介绍 Java反射是指在程序运行状态中,能检查任意对象的内容并调用任意方法.对于任何一 ...
- java反射 枚举_Java反射应用之获取枚举类的枚举
Java反射实际应用 实际工作中使用到的Java反射并不是很多,我接触到的基本上都是工具类中相对比较常用一些,本篇文章就是我实际工作中遇到的场景. 应用场景:一个审批流程第一个节点审批时,需要填写第二 ...
- java反射总结_java反射总结
Class类的使用 1)在面向对象的世界里,万事万物皆对象 java语言中,静态的成员.普通数据类型不是对象 1.1 类是谁的对象呢?类是对象,类是java.lang.Class类的实例对象 1.2 ...
最新文章
- Android自定义绘制 绘制基础
- outlook express 邮件超过2G时的解决方法
- SQL Server改MySQL注意事项
- Windows Mobile获取SIM卡上的所有电话号码
- 梦幻模拟战更新服务器正在维护,梦幻模拟战魔之启示录更新维护公告
- javascript中对一个对象数组按照对象某个属性进行排序
- 面向对象(二)——三大特性(封装、继承、多态)
- 拓扑排序排课系统_视频结构化人脸布控系统
- 13.PHP核心技术与最佳实践 --- Hash 算法与数据库实现
- 论文:GeoGebra 在线数学应用函数演示
- 关于APP测试用例点
- php获取当前网址附带(http://或者https//)
- 有了它,Java语法也可以变得甜甜的
- 计算机截屏无法保存,win7电脑自带截图软件保存图片失败怎么办?
- L2-029 特立独行的幸福 (递归) 有代码详细解析
- 几招最有效的防辐射的方法
- 怎么修改Word每行文字间距
- 洛谷【T279725】搬砖
- Java学习第七项--类和对象
- ndk开发(二)JNI、java互调
热门文章
- MyEclipse使用总结——在MyEclipse中新建Maven框架的web项目[转]
- OSD仿真_MFC程序01
- 20200724每日一句
- Atitit 数据结构与常见文件元数据结构 目录 1. 分类 内部数据结构与外部存储数据结构	1 2. 编程语言内部数据结构 (堆栈 树 图等	1 2.1. 数据结构 (集合,列表,tree,map
- Atitit table的读取解析from html by jsoup java html paresr 目录 1. atitit.gui控件的定位与选择器	1 2. 读取表格流程 遍历表格ta
- Atitit webdav 原理详细 概念补充 2.WebDAV的优势: 一套自己定义的安全完善的身份验证机制。 穿墙 HTTPS传送数据 使用一个TCP连接传送所有文件 方便的客户端工
- Atitit 数据库事务实现原理
- atitit.人脸识别的应用场景and使用最佳实践 java .net php
- paip.提升效率---filter map reduce 的java 函数式编程实现
- paip.python错误解决 0x64024e96 指令引用的 0x00000135 内存。该内存不能为 read。