如何取得java泛型里的类型

 我来答
JSON在线解析
2017-04-13 · 专注JSON在线解析工具,JavaDemo分享
JSON在线解析
采纳数:644 获赞数:1154

向TA提问 私信TA
展开全部

子父类的方式获取泛型,刚刚写的代码,参考一下。



import java.lang.reflect.ParameterizedType;
import java.lang.reflect.Type;
/**
 * 
 * 开发公司:SOJSON在线工具 <p>
 * 版权所有:© www.sojson.com
 * 博客地址:http://www.sojson.com/blog/
 * <p>
 * 
 * 注释写这里
 * 
 * <p>
 * 
 * 区分 责任人 日期    说明<br/>
 * 创建 周柏成 2017年4月13日 09:49  <br/>
 *
 * @author zhou-baicheng
 * @email  so@sojson.com
 * @version 1.0,2017年4月13日 09:49 <br/>
 * 
 */
public class Demo2<T,M> {

    /**
     * 这里是子类,写在一个文件里,方便调用,static修饰是为了和当前类同级
     * @author Administrator
     *
     */
    static class SunDemo extends Demo2<SunDemo,Demo2>{
        
    }
    
    
    public Demo2() {
        Type type = getClass().getGenericSuperclass();
        if (type instanceof ParameterizedType) {
            Type[] entityClass = ((ParameterizedType) type).getActualTypeArguments();
            System.out.println("获取的泛型类型:");
            for (Type t : entityClass) {
                Class clazz = (Class)t;
                System.out.println(clazz.getCanonicalName());
            }
        }
    }
    /**
     * 通过实例化子类,父类获取。
     * @param args
     */
    public static void main(String[] args) {
        new SunDemo();
    }
}
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式