获取方法返回值泛型的真实类型
程序员文章站
2022-06-09 14:40:08
...
//反射获取返回值
Method method = clazz.getMethod("xxx");
Class<?> returnType = method.getReturnType();
if (returnType==List.class){
Type type = method.getGenericReturnType();
if (type instanceof ParameterizedType){
Type[] actualTypeArguments = ((ParameterizedType) type).getActualTypeArguments();
//因为list泛型只有一个值 所以直接取0下标
String typeName = actualTypeArguments[0].getTypeName();
//真实返回值类型 Class对象
Class<?> actualType = Class.forName(typeName);
}
}
上一篇: java中的时间转换