Creator的getConstructorField方法增加对子类字段的支持
This commit is contained in:
@@ -145,6 +145,18 @@ public interface Creator<T> {
|
||||
try {
|
||||
Field field = clazz.getDeclaredField(names[i]);
|
||||
se[i] = new SimpleEntry<>(field.getName(), field.getType());
|
||||
} catch (NoSuchFieldException fe) {
|
||||
Class cz = clazz;
|
||||
Field field = null;
|
||||
while ((cz = cz.getSuperclass()) != Object.class) {
|
||||
try {
|
||||
field = cz.getDeclaredField(names[i]);
|
||||
break;
|
||||
} catch (NoSuchFieldException nsfe) {
|
||||
}
|
||||
}
|
||||
if (field == null) return null;
|
||||
se[i] = new SimpleEntry<>(field.getName(), field.getType());
|
||||
} catch (Exception e) {
|
||||
return null;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user