zoukankan      html  css  js  c++  java
  • 获取准确泛型的代码

    /** 泛型构造类 */

    public class TypeReference implements ParameterizedType {

    private Type rawType;

    private Type [] actualTypeArguments;

    public TypeRefrence(Type rawType, Type [] actualTypeArguments){

      this.rawType = rawType;

      this.actualTypeArguments = actualTypeArguments;

    }

    public Type[] getActualTypeArguments() {

      return actualTypeArguments;

    }

    public Type getRawType() {

       return rawType;

    }

    public Type getOwnerType() {

       return null;

    }

    }

    if (!type.isPrimitive()) {

      //set generic type if field not primitive type

      java.lang.reflect.Type rawType = (java.lang.reflect.Type) value.getClass();

      java.lang.reflect.Type genericType = field.getGenericType();

      try {

        ParameterizedType parameterizedType = (ParameterizedType) genericType;

        com.xxx.xxx.xxxxx.core.TypeRefrence typeRefrence = new TypeRefrence(rawType, parameterizedType.getActualTypeArguments());

        //构造泛型类型

        switchBean.setGeneric(typeRefrence);

      } catch (ClassCastException e) {

        switchBean.setGeneric(genericType);

      }

    }

  • 相关阅读:
    ListView 分页显示(转载+修改)下
    ListView 分页显示(转载+修改)上
    Android_开发片段(Part 1)
    JSCH执行linux命令
    linux运行wkhtmltopdf
    Apache HttpClient
    JDK自带的URLConnection
    java poi读取excel
    CXF webservice完整例子
    Oracle 常用初始化命令
  • 原文地址:https://www.cnblogs.com/adealjason/p/6802955.html
Copyright © 2011-2022 走看看