Java如何获取类对象的字段?
下面的示例使用反射获取类对象的字段。我们将获取字段名称及其对应的类型。下面显示了三种可用于获取对象字段的方式:
Class.getDeclaredFields()
Class.getFields()
Class.getField(String)
package org.nhooo.example.lang;
import java.util.Date;
import java.lang.reflect.Field;
public class GetFields {
public Long id;
protected String name;
private Date birthDate;
Double weight;
public static void main(String[] args) {
GetFields object = new GetFields();
Class clazz = object.getClass();
//获取所有对象字段,包括公共的,受保护的,打包的和私有的
//访问字段。
Field[] fields = clazz.getDeclaredFields();
System.out.println("Number of fields = " + fields.length);
for (Field field : fields) {
System.out.println("Field name = " + field.getName());
System.out.println("Field type = " + field.getType().getName());
}
System.out.println("n----------------------------------------n");
//获取所有对象可访问的公共字段。
fields = clazz.getFields();
System.out.println("Number of fields = " + fields.length);
for (Field field : fields) {
System.out.println("Field name = " + field.getName());
System.out.println("Field type = " + field.getType().getName());
}
System.out.println("n----------------------------------------n");
try {
//使用公共访问修饰符获取字段名称ID
Field field = clazz.getField("id");
System.out.println("Field name = " + field.getName());
System.out.println("Field type = " + field.getType().getName());
} catch (NoSuchFieldException e) {
e.printStackTrace();
}
}
}
热门推荐
10 香港老妈结婚祝福语简短
11 毕业立体贺卡祝福语简短
12 简短新年年会祝福语
13 评论小品祝福语大全简短
14 恭喜师兄结婚祝福语简短
15 员工集体辞职祝福语简短
16 高中新生祝福语 简短
17 装修祝福语男生搞笑简短
18 生日开业蛋糕祝福语简短