获取泛型类型

来源:互联网 发布:淘宝直播一个月多少钱 编辑:程序博客网 时间:2024/05/16 03:28
public class Gears<T,R> {


    private Class<R> clazz;

@SuppressWarnings("unchecked")
public Gears(){
//获取父类的类型
Type  superClass=getClass().getGenericSuperclass();
//判断是否是参数化类型
if(superClass  instanceof  ParameterizedType){
ParameterizedType type=(ParameterizedType)superClass;

Type[] ts=type.getActualTypeArguments();
if(null!=ts && ts.length>0){
if(ts[0] instanceof Class){
clazz=(Class<R>) ts[1];
}

}

}
}
/**
原创粉丝点击