如何利用反射获取字段的数据
来源:互联网 发布:软件管家官方下载安装 编辑:程序博客网 时间:2024/05/20 03:43
import java.lang.reflect.Field;
1.
2. /**
3. *
4. * @author EX-QINCIDONG001
5. *
6. */
7. public class ReflectClass {
8.
9. /**
10. * @param args
11. */
12. public static void main(String[] args) {
13. Person p = new Person();
14. p.setId(0);
15. p.setName("张三");
16. reflect(p);
17. }
18.
19. public static void reflect(Object obj) {
20. if (obj == null) return;
21. Field[] fields = obj.getClass().getDeclaredFields();
22. for (int j = 0; j < fields.length; j++) {
23. fields[j].setAccessible(true);
24. // 字段名
25. System.out.print(fields[j].getName() + ",");
26. // 字段值
27. if (fields[j].getType().getName().[A1] equals(
28. java.lang.String.class.getName())) {
29. // String type
30. try {
31. System.out.print(fields[j].get(obj));
32. } catch (IllegalArgumentException e) {
33. // TODO Auto-generated catch block
34. e.printStackTrace();
35. } catch (IllegalAccessException e) {
36. // TODO Auto-generated catch block
37. e.printStackTrace();
38. }
39. } else if (fields[j].getType().getName().equals(
40. java.lang.Integer.class.getName())
41. || fields[j].getType().getName().equals("int")) {
42. // Integer type
43. try {
44. System.out.println(fields[j].getInt(obj));
45. } catch (IllegalArgumentException e) {
46. // TODO Auto-generated catch block
47. e.printStackTrace();
48. } catch (IllegalAccessException e) {
49. // TODO Auto-generated catch block
50. e.printStackTrace();
51. }
52. }
53. // 其他类型。。。
54. }
55. System.out.println();
56. }
57. }
58.
59. class Person {
60. private int id;
61. private String name;
62.
63. public int getId() {
64. return this.id;
65. }
66.
67. public void setId(int id) {
68. this.id = id;
69. }
70.
71. public String getName() {
72. return this.name;
73. }
74.
75. public void setName(String name) {
76. this.name = name;
77. }
78.
79. }
结果:
id,0
name,张三
它是获取字段的类型名称如int
Double,string等
- 如何利用反射获取字段的数据
- 如何反射获取Android SystemProperties 的字段
- java开发中如何利用反射获取私有化的方法
- 利用反射获取类或者方法或者字段上的注解的值
- 利用反射获取类或者方法或者字段上的注解的值
- 【Android开发经验】利用反射机制,获取类的字段、方法、并实现简单调用
- [Java] 利用Java反射机制批量获取和设置字段的值
- 利用反射机制,获取类的字段、方法、并实现简单调用
- 利用反射拷贝实体bean的字段
- 利用反射对类字段的解析
- Mybatis如何获取不知道确定字段的所有数据
- 如何通过反射获取和设置对象私有字段的值?
- 反射获取对象实例的字段信息和字段值
- 黑马程序员--反射--利用反射获取方法名和字段名
- 如何利用C#代码获取SQLite的元数据
- 反射修改字段数据
- Java反射获取字段、设置字段以及获取字段的值
- 利用反射获取类的属性名称
- C++——对象创建的两种方式
- 基数排序
- ML初笔记
- Server Tomcat v7.0 Server at localhost was unable to start within 45 seconds....
- K-means聚类算法
- 如何利用反射获取字段的数据
- i think i need a houseboat
- Socket编程服务端原理简单介绍
- HDU-5642 King's Order
- Android开发 二维码的生成
- 关于迭代器的一些总结
- nyoj613
- websocket资源收集
- Ubuntu安装Sublime Text并输入中文