我使用反射來查找類成員及其相關類型,使用下面的代碼, 但我的問題是如果有一種方法可以找到類默認值?
例如,在這種情況下,我需要值1L。使用反射查找類成員值
public class SalesOrrP implements Serializable {
private static final long serialUID = 1L;
}
我已經使用下面的代碼來查找部件名稱和類型
Field[] declaredFields = clsObj.getClass().getDeclaredFields();
for (Field field : declaredFields) {
// Get member name & types
Class<?> fieldType = field.getType();
Type genericType = field.getGenericType();
String fieldTypeName = fieldType.getName();
String memberName = field.getName();
if (genericType instanceof ParameterizedType) {
ParameterizedType pt = (ParameterizedType) genericType;
for (Type typeOfReferance : pt.getActualTypeArguments()) {
//...
}
}
}
可能很明顯的答案,但:是否有可能該字段不保留其初始化值(即它已在初始化後更改過)? – assylias 2013-02-13 13:08:33
也許你可以創建另一個類的實例並查看其中的值? – keuleJ 2013-02-13 13:09:16
@assylias - 不知道你是什麼意思... – 2013-02-13 13:11:07