/**
* 獲取所有屬性包括父類
* @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);
}