网站开发流程电话,普通人做电商要多少钱,dede一键更新网站,长治网站公司一、概述 Field是一个类,位于java.lang.reflect包下。在Java反射中Field类描述的是类的属性信息#xff0c;功能包括#xff1a;
获取当前对象的成员变量的类型 对成员变量重新设值 二、如何获取Field类对象 getField(String name)#xff1a; 获取类特定的方法#xff0c…一、概述 Field是一个类,位于java.lang.reflect包下。在Java反射中Field类描述的是类的属性信息功能包括
获取当前对象的成员变量的类型 对成员变量重新设值 二、如何获取Field类对象 getField(String name) 获取类特定的方法name参数指定了属性的名称 Class.getFields(): 获取类中public类型的属性返回一个包含某些 Field 对象的数组该数组包含此 Class 对象所表示的类或接口的所有可访问公共字段 getDeclaredField(String name): 获取类特定的方法name参数指定了属性的名称 getDeclaredFields(): 获取类中所有的属性(public、protected、default、private)但不包括继承的属性返回 Field 对象的一个数组 三、Field 类对象常用方法 1.获取变量的类型
Field.getType()返回这个变量的类型 Field.getGenericType()如果当前属性有签名属性类型就返回否则就返回 Field.getType() isEnumConstant() 判断这个属性是否是枚举类 2.获取成员变量的修饰符
Field.getModifiers() 以整数形式返回由此 Field 对象表示的字段的 Java 语言修饰符 3.获取和修改成员变量的值getName() 获取属性的名字 get(Object obj) 返回指定对象obj上此 Field 表示的字段的值 set(Object obj, Object value) 将指定对象变量上此 Field 对象表示的字段设置为指定的新值 四、实践代码 1.获取对象中的所有字段名
//获取所有字段名
Field[] declaredFields FinancieWaybillPageListVo.class.getDeclaredFields();
ListString columnList new ArrayList();
for (Field declaredField : declaredFields) {String name declaredFields.getName();if (CustomColumnVo.equals(name)) {continue;}columnList.add(name);
}
userCustomColumn.setColumnName(columnList);
2.获取对象中的指定字段名 Field field tProductionInputQualityDatas.getClass().getDeclaredField(indicatorCode);
3.通过反射给属性赋值
//其次设置该属性的可访问性
field.setAccessible(true);
field.set(tProductionInputQualityDatas,D0012);