反射修改字段数据
来源:互联网 发布:linux pl2303驱动下载 编辑:程序博客网 时间:2024/05/20 03:05
/*
*练习:获取一个对象的所有字段,把其中String类型的字段值中的’h’全改成’t’
*分析:
*前提条件:我们不知道这个对象有哪些成员变量,也不知道哪些成员变量是String类型。
*我们只能通过反射来做。
*首先要获取这个对象的字节码对象。然后反射获取这个对象的所有字段,判断这些字段是否是String类型
*如果是,就把其中的h改成f
* 解析:
* A:获取对象的Class对象
* B:得到对象所属类的所有字段
* C:循环遍历,拿到每个字段
* D:判断是否是String类型
* 否:不是需要的状态忽略
* 是:E:取出字段的值
* F:把其中的h替换成t
* G:把修改好的字符串重新设置给原来的字段
*/
publicclass ReflectDemo04 {
publicstatic void main(String[]args) throws Exception {
Student s = new Student("tanshilin", 23,"henan");
// A:获取对象的Class对象
Class clazz = s.getClass();
// B:获取对象所属类的所有字段
Field[] fields = clazz.getDeclaredFields();
// C:循环遍历,拿到每个字段
for( Fieldf : fields){
// 暴力访问
f.setAccessible(true);
// D:判断是否是String类型
if(f.getType()== String.class){
// 是:E:取出字段的值
String str = (String) f.get(s);
// F:把其中的h替换成t
str = str.replace('h','t');
// G:把修改好的字符串设置给这个字段
f.set(s, str);
}
}
System.out.println(s);
}
}
- 反射修改字段数据
- 通过反射修改类的某些字段
- sql 修改数据字段长度
- 如何利用反射获取字段的数据
- 通过反射修改指定对象字段值的通用方法
- poi到处数据 使用反射机制 动态取字段数据
- 修改oracle有数据字段长度
- Oracle 修改带数据的字段类型
- Oracle 修改带数据的字段类型
- Oracle 修改带数据的字段类型
- Oracle 修改带数据的字段类型
- Oracle 修改带数据的字段类型
- Oracle 修改带数据的字段类型
- Oracle 修改带数据的字段类型
- Oracle 修改带数据的字段类型
- Oracle修改带数据的字段类型
- jdbc 修改 数据的clob字段
- DB2修改某字段某位数据
- 中国计算机学会CCF推荐国际学术会议和期刊目录-计算机体系结构/并行与分布计算/存储系统
- iReport+mongodb基础并制作简单报表
- datagrid groupview分组新增单选按钮
- Tensorflow学习笔记(二):Deep MNIST for Experts
- java动态代理之自我理解
- 反射修改字段数据
- 000040:在主方法中通过while循环将整数1~10相加,并将结果输出
- 微信扫码支付
- base64网络传输问题
- python学习之——字符串查找 find 和 index方法
- linux从官网安装mysql 5.6
- require时报错:loop or previous error loading module "xxx"
- 中国计算机学会CCF推荐国际学术会议和期刊目录-计算机网络
- js 多文件下载,不错