getGenericSuperclass 返回直接继承的父类(包含泛型参数)
getGenericSuperclass()
返回表示此 Class 所表示的实体(类、接口、基本类型或 void)的直接超类的 Type
//获取XXX父类上(带泛型参数)的类型
ParameterizedType genericSuperclass =
(ParameterizedType) XXX.class.getGenericSuperclass();
//获取父类上所有的泛型参数
Type[] types = genericSuperclass.getActualTypeArguments();
Class<T> targetClass = (Class<T>) types[0];