欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Gson通过借助TypeToken获取泛型参数的类型的方法

程序员文章站 2024-03-16 09:05:28
...

参考文章:
Gson通过借助TypeToken获取泛型参数的类型的方法

概括来说就是对于带有泛型的class,返回一个ParameterizedType对象,对于Object、接口和原始类型返回null,对于数 组class则是返回Object.class。ParameterizedType是表示带有泛型参数的类型的Java类型,JDK1.5引入了泛型之 后,Java中所有的Class都实现了Type接口,ParameterizedType则是继承了Type接口,所有包含泛型的Class类都会实现 这个接口。

 Type type2 = ((ParameterizedType)snHttpCallback.getClass().getGenericSuperclass()).getActualTypeArguments()[0];
                    T bean3 =  gson.fromJson(response, type2);
                    snHttpCallback.callBack(bean3);
                    
   public abstract class SnHttpCallback<T> {
         public abstract void callBack(T response);
    }