从下面的行我得到一个对象PdsLongAttrImpl
Object obj = typeInfo.getParseMethod().invoke(null, rawValue);
该对象具有propertyKey
和Value
作为字段。
如何从上述特定对象中获取值?
obj
将返回的类型转换为类型。
例如,如果您的预期返回类型是PdsLongAttrImpl
那么,它将是:
PdsLongAttrImpl pdsObj = (PdsLongAttrImpl)obj;
//然后对pdsObj
.
注意:如果 obj 不是您要转换的类型,您最终会得到ClassCastException
.
只需将值转换为正确的类型:
YourTypeHere obj = (YourTypeHere)typeInfo.getParseMethod().invoke(null, rawValue);
如果您不确定类型,可以使用:
System.out.println(typeInfo.getParseMethod().invoke(null, rawValue).getClass().getName));
这将在控制台上打印类的名称
如果您知道对象是什么类型(并且 PdsAttrImpl 是代码的可见类),则可以将其转换为
PdsLongAttrImpl casted = (PdsLongAttrImpl)obj;
//assuming you have getXXX methods for the two fields
casted.getPropertyKey();
casted.getValue();