java怎么通过字段去获取对象_通过java反射获取任意对象的字段名及字段值
import java.lang.reflect.Field;
public class ReflectClass3 {
/**
* @param args
*/
public static void main(String[] args) {
Person p = new Person(1, "ctl", true, ‘c‘, 2.0f, 2.0, 1L, (short) 1,
(byte) 1);
p.setId(0);
p.setName("张三");
p.setIsMen(true);
p.setCh(‘c‘);
p.setFloat_(2.0f);
p.setDouble_(3.0);
p.setLong_(2l);
p.setShort_((short) 1);
p.setByte_((byte) 2);
reflect(p);
}
public static void reflect(Object obj) {
if (obj == null)
return;
Field[] fields = obj.getClass().getDeclaredFields();
String[] types1={"int","java.lang.String","boolean","char","float","double","long","short","byte"};
String[] types2={"Integer","java.lang.String","java.lang.Boolean","java.lang.Character","java.lang.Float","java.lang.Double","java.lang.Long","java.lang.Short","java.lang.Byte"};
for (int j = 0; j < fields.length; j++) {
fields[j].setAccessible(true);
// 字段名
System.out.print(fields[j].getName() + ":");
// 字段值
for(int i=0;i
if(fields[j].getType().getName()
.equalsIgnoreCase(types1[i])|| fields[j].getType().getName().equalsIgnoreCase(types2[i])){
try {
System.out.print(fields[j].get(obj)+" ");
} catch (Exception e) {
e.printStackTrace();
}
}
}
}
}
}
public class Person {
public int id;
public String name;
public boolean isMen;
public Character ch;
public Float float_;
public Double double_;
public Long long_;
public Short short_;
public Byte byte_;
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public boolean getIsMen() {
return isMen;
}
public void setIsMen(boolean isMen) {
this.isMen = isMen;
}
public Character getCh() {
return ch;
}
public void setCh(Character ch) {
this.ch = ch;
}
public Float getFloat_() {
return float_;
}
public void setFloat_(Float float_) {
this.float_ = float_;
}
public Double getDouble_() {
return double_;
}
public void setDouble_(Double double_) {
this.double_ = double_;
}
public Long getLong_() {
return long_;
}
public void setLong_(Long long_) {
this.long_ = long_;
}
public Short getShort_() {
return short_;
}
public void setShort_(Short short_) {
this.short_ = short_;
}
public Byte getByte_() {
return byte_;
}
public void setByte_(Byte byte_) {
this.byte_ = byte_;
}
public Person(int id, String name, Boolean isMen, Character ch, Float float_,
Double double_, Long long_, Short short_, Byte byte_) {
super();
this.id = id;
this.name = name;
this.isMen = isMen;
this.ch = ch;
this.float_ = float_;
this.double_ = double_;
this.long_ = long_;
this.short_ = short_;
this.byte_ = byte_;
}
public Person() {
super();
}
}
java怎么通过字段去获取对象_通过java反射获取任意对象的字段名及字段值相关推荐
- .net core 获取机器码_.NET Core 反射获取所有控制器及方法上特定标签
有个需求,就是在. NET Core中,我们想在项目 启动时,获取LinCmsAuthorizeAttribute这个特性标签所有出现的地方,把他的参数,放入一个集合并缓存起来,以便后面使用此数据用于 ...
- java 获取泛型_聊聊Java泛型擦除那些事
>版权申明]非商业目的注明出处可自由转载 博文地址:https://blog.csdn.net/ShuSheng0007/article/details/89789849 出自:shushen ...
- formdata 接受参数中带有class 对象_浅析JAVA中的反射机制及对Servlet的优化
今天来聊聊java中的反射机制,工作以后发现很多东西动不动就要使用反射或者动态代理,如果不能很好的理解反射,那么对于动态代理等一些重要的设计模式就会有种不够通透的感觉. 所谓的反射,就是在运行状态中, ...
- java robot 对象_用Java Robot对象实现服务器屏幕远程监视
用Java Robot对象实现服务器屏幕远程监视 作者:李鲁群 摘要: 有时候,在Java应用程序开发中,如:远程监控或远程教学,常常需要对计算机的屏幕进行截取,由于屏幕截取是比较接近操作系统的操作, ...
- java jvm对象_【Java】JVM
在 HotSpot 虚拟机中,一个对象在内存中存储的布局可以分为三块区域:对象头(Object Header).实例数据(Instance Data)和对齐填充(Padding). 当我们在 Java ...
- java 异常对象_在java中的异常处理中的异常对象是什么
展开全部 Exception类以及他的子类 的一个实例对象 比如32313133353236313431303231363533e58685e5aeb931333264633563 常见异常 1. j ...
- java 获取文件大小_阿里Java后端开发面经,面试官都替我感到绝望
点关注,不迷路:持续更新Java相关技术及资讯!!! 内容源于群友投稿!记录一次阿里Java后端开发面经,分享给大家,感谢支持! 前言 秋招面试的第一家公司,也是第一次面试,真的超级紧张,从自我介绍到 ...
- java如果把字符串转成对象_为什么Java中的字符串对象是不可变的,有什么好处?...
专注于Java领域优质技术号,欢迎关注 原创: 阿杜的世界 阅读本文大概需要 4分钟. 所谓不可变对象,是指一个对象在创建后,它的内部状态不会被改变的对象.这意味着当我们将一个不可变对象的引用赋值给某 ...
- java有几大对象_一个 Java 对象到底有多大?
阅读本文大概需要 2.8 分钟. 出处:http://u6.gg/swLPg 编写 Java 代码的时候,大多数情况下,我们很少关注一个 Java 对象究竟有多大(占据多少内存),更多的是关注业务与逻 ...
- java类怎么删除对象_在java中删除一个对象?
在java中删除一个对象? 我想删除一个我创build的对象(跟随着你的一个椭圆),但是我怎么做呢? delete follower1; 没有工作. 编辑: 好吧,我会给更多的上下文. 我正在制作一个 ...
最新文章
- java中static作用详解
- 解决windows10下面无法抓取charles数据包问题
- 蓝桥杯大学组python试题_第十届蓝桥杯2019年C/C++ 大学A组省赛试题
- 经典的 Fork 炸弹解析
- AJAX并不神秘:揭密各种AJAX控件和类库
- 日语学习-多邻国-关卡1-家庭
- [Luogu] 软件包管理器
- 核心编程第五版 配套代码_攻略Python的免费书单:走进编程,从这五本书开始...
- oracle数据库导出和oracle导入数据的二种方法(oracle导入导出数据)
- webpack打包初体验
- 微信小程序云开发如何修改后台手动添加的数据
- 从零开始的基于百度大脑EasyData的多人协同数据标注
- mysql数据库查询语句_mysql数据库查询语句
- 如何用计算机打出字,两个字中间的点怎么打出来?
- 2021华数杯数学建模选题建议
- 使用条件随机场模型解决文本分类问题(附Python代码)
- JavaScript网页特效-留言板
- Capital One数据泄露影响1.06亿人,嫌疑人已被捕
- php mail 垃圾邮件,如何避免我的邮件从PHP邮件()被标记为垃圾邮件? - 程序园
- 物联网这么火!物联网之下的物联网卡到底是什么样子?