<sup id="m40ya"></sup>
  • 
    
  • <kbd id="m40ya"></kbd>
    <samp id="m40ya"></samp>
    <ul id="m40ya"></ul>
  • 更多精彩內容,歡迎關注:

    視頻號
    視頻號

    抖音
    抖音

    快手
    快手

    微博
    微博

    java獲取泛型class

    文檔

    java獲取泛型class

    java獲取泛型class的方法一共有兩種:1、Class類:public Type getGenericSuperclass();2、ParameterizedType類:Type[] getActualTypeArguments()。
    推薦度:
    導讀java獲取泛型class的方法一共有兩種:1、Class類:public Type getGenericSuperclass();2、ParameterizedType類:Type[] getActualTypeArguments()。

    很多朋友都想知道java怎么獲取泛型class?下面就一起來了解一下吧~

    獲取泛型Class的方法

    Class類的方法:

    public?Type?getGenericSuperclass()

    方法作用:

    如果超類是參數化類型,則返回的 Type 對象必須準確反映源代碼中所使用的實際類型參數。如果以前未曾創建表示超類的參數化類型,則創建這個類型。有關參數化類型創建過程的語義,請參閱 ParameterizedType 聲明。如果此 Class 表示 Object 類、接口、基本類型或 void,則返回 null。如果此對象表示一個數組類,則返回表示 Object 類的 Class 對象。

    ParameterizedType類的方法:

    Type[] getActualTypeArguments()

    方法作用:返回表示此類型實際類型參數的?Type?對象的數組。

    注意,在某些情況下,返回的數組為空。如果此類型表示嵌套在參數化類型中的非參數化類型,則會發生這種情況。

    二、獲取泛型Class對象

    (解析Excel的類代碼較多,這里定義幾個簡單的類記錄)

    定義獲取泛型Class對象的工具類

    GenericSuperclassUtil

    import?java.lang.reflect.ParameterizedType;
    import?java.lang.reflect.Type;
    public?class?GenericSuperclassUtil?{
    /*
    *?獲取泛型類Class對象,不是泛型類則返回null
    */
    public?static?Class?getActualTypeArgument(Class?clazz)?{
    Class?entitiClass?=?null;
    Type?genericSuperclass?=?clazz.getGenericSuperclass();
    if?(genericSuperclass?instanceof?ParameterizedType)?{
    Type[]?actualTypeArguments?=?((ParameterizedType)?genericSuperclass)
    .getActualTypeArguments();
    if?(actualTypeArguments?!=?null?&&?actualTypeArguments.length?>?0)?{
    entitiClass?=?(Class)?actualTypeArguments[0];
    }
    }
    return?entitiClass;
    }
    }

    定義BaseService,用來測試不使用父類時泛型Class的獲取

    BaseService

    public?class?BaseService?{
    public?Class?getEntityClass()?{
    return?GenericSuperclassUtil.getActualTypeArgument(this.getClass());
    }
    }

    測試BaseService.getEntityClass()

    @Testpublic?void?testBaseService()?{
    System.out.println(new?BaseService().getEntityClass());//?控制臺輸出:null
    }

    以上就是小編今天的分享,希望可以幫到大家。

    文檔

    java獲取泛型class

    java獲取泛型class的方法一共有兩種:1、Class類:public Type getGenericSuperclass();2、ParameterizedType類:Type[] getActualTypeArguments()。
    推薦度:
    為你推薦
    資訊專欄
    熱門視頻
    相關推薦
    java core java獲取秒級時間戳 java crash java獲取網絡時間 java crontab java獲取視頻時長 java csrf java獲取請求域名 java獲取路徑 java cssbox java獲取運行時間 java ctp java獲取隨機字符串 java daemon java獲取隨機數 java dashboard java獲得當前路徑 java表單校驗 java dataframe java規則引擎 java corba java cookie java獲取本地ip java controller java獲取本周日期 java context japanese java 微信怎么群發消息 java獲取時間差 java獲取文件名后綴 微博賬號怎么注銷 excel如何換行 java獲取當月最后一天日期 excel去重 java獲取當前項目的路徑 QQ怎么強制解綁手機號 java獲取當前路徑的幾種方法 華為手機怎么添加桌面小組件 java獲取當前目錄路徑 java獲取當前目錄
    Top 国产精品午夜爆乳美女| 99热这里只有精品66| 国产精品自拍一区| 亚洲国产一成人久久精品| 国产精品模特hd在线| 7m精品福利视频导航| 香蕉久久国产精品免| 精品人妻人人做人人爽| 嫩草影院精品视频在线观看| 久久棈精品久久久久久噜噜| 国产自偷亚洲精品页65页| 国产精品自拍电影| 久久只这里是精品66| 国产精品 羞羞答答在线| 久久夜色精品国产噜噜麻豆| 四虎精品视频在线永久免费观看 | 久久久久久九九精品久小说| 亚洲国产成人精品无码区二本| 久99久无码精品视频免费播放| 国产精品二区三区免费播放心| 亚洲AV无码之国产精品| 日本精品www色| 亚洲精品在线免费观看视频| 久久亚洲精品国产精品黑人| 国产三级精品三级在线专区1| 国产精品无打码在线播放| 国产精品爽爽va在线观看网站| 日韩精品久久久久久久电影蜜臀| 国产成人无码精品一区不卡| 国产精品1000夫妇激情啪发布| 午夜精品久久久久久影视riav| 精品麻豆丝袜高跟鞋AV| 久久er热视频在这里精品| 日本无码小泬粉嫩精品图 | 九九精品在线观看| 手机看片在线精品观看| 99热在线日韩精品免费| 亚洲精品乱码久久久久久蜜桃不卡 | 精品国产香蕉伊思人在线在线亚洲一区二区 | 一本色道久久88综合日韩精品| 国产亚洲福利精品一区二区|