通过反射获取列表属性里保存的对象类型
假设有个对象里有一个list<Object> listProperty 属性,要获取Object的类型:
Class<?> typeClass = field.getType();
if (List.class.isAssignableFrom(typeClass)) {
Type fieldType = field.getGenericType();
if (fieldType instanceof ParameterizedType) {
ParameterizedType paramType = (ParameterizedType) fieldType;
Type[] genericTypes = paramType.getActualTypeArguments();
if (genericTypes != null && genericTypes.length > 0) {
if (genericTypes[0] instanceof Class<?>) {
Class<?> subType = (Class<?>) genericTypes[0];
}
}
}
}
其中subType就是Object的对象类型。
浙公网安备 33010602011771号