一、自定义编写方法获取父类所有字段:
/**
* 获取所有字段
* @param clazz
* @return
*/
public static Field[] getFields(Class clazz){
List<Field> fieldList = new ArrayList<>(16);
while (clazz != null){
Field[] fields = clazz.getDeclaredFields();
fieldList.addAll(Arrays.asList(fields));
clazz = clazz.getSuperclass();
}
Field[] f = new Field[fieldList.size()];
return fieldList.toArray(f);
}
二、使用 hutool 包下的反射工具类也可以全部获取
Class<?> argObjClass = argObj.getClass();
Field[] typeFields = ReflectUtil.getFields(argObjClass);