/**
* 获取所有属性包括父类
* @param object
* @return
*/
public static Field[] getAllFields(Object object){
Class clazz = object.getClass();
List<Field> fieldList = new ArrayList<>();
while (clazz != null){
fieldList.addAll(new ArrayList<>(Arrays.asList(clazz.getDeclaredFields())));
clazz = clazz.getSuperclass();
}
Field[] fields = new Field[fieldList.size()];
fieldList.toArray(fields);
return fields;
}
//对属性进行处理
for (Field field : fields) {
int mod = field.getModifiers();
//跳过不可变动的常量
if (Modifier.isStatic(mod) || Modifier.isFinal(mod)) {
continue;
}
//设置属性为可修改
field.setAccessible(true);
}