ad

学习《零基础Java从入门到精通》_12.1.3 获取成员变量的信息

admin 127 2023-10-25

【摘要】 本书摘自《零基础Java 从入门到精通》一书中第十二章,第1.3节,编者是零壹快学

12.1.3 获取成员变量的信息

通过Class类中提供的getField()、getFields()、getDeclaredField()和getDeclaredFields()方法可以获 取类的成员变量信息。它们的返回值为Field对象或者对象数组,各个方法的详细描述如表12.1.3

所示。

表12.1.3 获取类的成员变量信息

学习《零基础Java从入门到精通》_12.1.3 获取成员变量的信息

方法 功能描述

getField(String name) 返回一个Field对象,它反映此Class对象所表示的类或接口的指定公共成员字段

getFields() 返回一个Field对象的数组,这些对象反映此Class对象所表示的类或接口的所有 可访问公共字段,即获得某个类的所有公共(public)的字段,包括父类中的 字段

getDeclaredField(String name) 返回一个Field对象,该对象反映此Class对象所表示的类或接口的指定已声明字 段。name参数是一个String,它指定所需字段的简称

getDeclaredFields() 返回一个Field对象的数组,这些对象反映此Class对象所表示的类或接口所声明 的所有字段。包括公共、保护、默认(包)访问和私有字段,但不包括继承的 字段

java.lang.reflect.Field提供了获取当前对象的成员变量的类型和重新设值的方法。Field类中提供 的常用方法如表12.1.4所示。

表12.1.4 Field类中的常用方法

方法 功能描述

get(Object obj) 返回指定对象上此Field表示的字段的值

set(Object obj,Object value) 将指定对象变量上此Field对象表示的字段设置为指定的新值

getName() 返回此Field对象表示的字段的名称

getType() 返回一个Class对象,它代表此Field对象所表示字段的声明类型

getInt(Object obj) 获取int类型或另一个通过扩展转换可以转换为int类型的基本类型的静态或实 例字段的值

setInt(Object obj,inti) 将字段的值设置为指定对象上的一个int值

getBoolean(Object obj) 获取一个静态或实例boolean字段的值

setBoolean(Object obj,boolean z) 将字段的值设置为指定对象上的一个boolean值

getFloat(Object obj) 获取float类型或另一个通过扩展转换可以转换为float类型的基本类型的静态或 实例字段的值

setFloat(Object obj,float f) 将字段的值设置为指定对象上的一个float值

第 12 章 Java反射与注解

动手写12.1.5

上面示例中有一个Person类,该类具有两个成员变量name和age,通过getDeclaredFields()获取 Person类的所有成员变量,通过getType()方法获取成员变量的声明类型,通过getName()方法获取成 员变量的名称。其运行结果为:

基 础 Java 从入门到精通

图12.1.2 获取成员变量示例

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们 18664393530@aliyun.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:《给所有人的Python》_第四版_也是给你的一本知识宝典_1.3 交互式脚本(对话型脚本)
下一篇:《认知计算与深度学习》_基于物联网云平台的智能应用_1.4.1 数据挖掘与机器学习
相关文章

 发表评论

暂时没有评论,来抢沙发吧~

×