1. 在应用反射时, 有时候需要加载泛型列表中类的运行时类, 可以通过以下方法实现
/**
*
* @param clazz
* @return 返回Clazz的父类的泛型列表, 事实上只返回第一个, 返回类型是一个运行时类
*/
public static Class getGenericParam(Class clazz){
Type type = clazz.getGenericSuperclass(); // 获取clazz的父类
ParameterizedType parameterType = (ParameterizedType) type;
// 如果父类带泛型, 则可以强转为ParameterizedType 类型, 即为带泛型的类型
Type[] typeArguments = parameterType.getActualTypeArguments();
//返回泛型参数数组,
return (Class) typeArguments[0];
}