Java反射机制实现对象属性值的拷贝
来源:互联网 发布:九珠数学算法视频教程 编辑:程序博客网 时间:2024/05/14 21:52
import java.lang.reflect.Field;/** * @author 欢迎加入Java技术交流群:646766275 * */public class Test { /** * @param args */ public static void main(String[] args) { // TODO Auto-generated method stub A a = new A(); a.setAge(20); a.setName("test"); try { Class c1 = Class.forName("A"); Field[] fields1 = c1.getDeclaredFields(); Class c2 = Class.forName("B"); Field[] fields2 = c2.getDeclaredFields(); B b = (B)c2.newInstance(); for (Field field1 : fields1) { field1.setAccessible(true); for (Field field2 : fields2) { field2.setAccessible(true); if (field1.getName().equals(field2.getName())) { field2.set(b, field1.get(a)); } } } System.out.println(b.getName() + " " + b.getAge()); } catch (Exception e) { e.printStackTrace(); } }}class A { private int age; private String name; public int getAge() { return age; } public void setAge(int age) { this.age = age; } public String getName() { return name; } public void setName(String name) { this.name = name; }}class B { private int age; private String name; public int getAge() { return age; } public void setAge(int age) { this.age = age; } public String getName() { return name; } public void setName(String name) { this.name = name; }}
main方法执行结果:
test 20
注意:A,B两个类如果放在包下,则需附带加上相关包名。
阅读全文
0 0
- Java反射机制实现对象属性值的拷贝
- 通过Java的反射机制实现对象的拷贝
- 利用Java反射机制和Javassist实现Java对象及其属性的动态创建生成
- 利用Java反射机制和Javassist实现Java对象及其属性的动态创建生成
- Java通过反射实现简单对象的拷贝
- 利用java反射机制对比两对象同属性名的属性值
- java使用反射机制根据属性名获取object对象指定属性的值
- Java中的反射机制(二) 一个利用反射进行对象拷贝的例子
- Java中的反射机制 一个利用反射进行对象拷贝的例子
- Java中的反射机制(二) 一个利用反射进行对象拷贝的例子
- 通过java反射机制操作对象的属性方法
- JAVA反射机制-EL表达式获取对象属性的原理
- Java通过反射机制动态设置对象属性值
- 反射实现对象拷贝
- 利用java反射机制写的一个实体类属性拷贝的工具
- java反射(对象拷贝)
- 使用反射+缓存+委托,实现一个不同对象之间同名同类型属性值的快速拷贝
- 使用反射+缓存+委托,实现一个不同对象之间同名同类型属性值的快速拷贝
- 归并排序 & 逆序对
- 预告
- eclipse和tomcat编译不同步问题
- CNAME A记录区别
- PAT 1031
- Java反射机制实现对象属性值的拷贝
- 二十四、访问者模式——设计模式学习笔记
- 常用图像数据集原始数据(.png或.jpg格式)生成方法
- linux内核学习1
- LINQ系列:Linq to Object聚合操作符
- linux笔记
- LeetCode39 Combination Sum
- quartz
- Python列表和字典的学习