<strike id="cakm0"></strike>
  • <button id="cakm0"><dl id="cakm0"></dl></button>
  • <samp id="cakm0"><tbody id="cakm0"></tbody></samp>
    <samp id="cakm0"><pre id="cakm0"></pre></samp><ul id="cakm0"></ul>
    <strike id="cakm0"></strike>
    <li id="cakm0"></li>
  • <ul id="cakm0"></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精品视频在线观看免费专区| 日本精品一区二区在线播放| 91精品全国免费观看青青| 国产成人午夜精品一区二区三区 | 亚洲国产精品成人精品软件| 国语自产精品视频| 下载天堂国产AV成人无码精品网站| 国拍在线精品视频免费观看| 精品视频无码一区二区三区 | 久久国产精品久久精品国产| 网友偷拍日韩精品| 国产精品高清m3u8在线播放| 麻豆精品无码国产在线果冻| 久久久久久精品无码人妻| 日韩精品极品视频在线观看免费| 成人午夜精品无码区久久| 国产精品免费久久久久影院| 国产真实乱人偷精品| 精品久久久久久久99热| 国产精品日韩欧美一区二区三区 | 久久精品一区二区| 最新精品国偷自产在线| 久久久久久亚洲精品不卡| 亚洲欧洲精品成人久久奇米网| 老司机午夜精品视频在线观看免费| 国内精品视频一区二区八戒 | 91在线精品亚洲一区二区| 久久91亚洲精品中文字幕| 久久精品国产99精品最新| 国产精品免费看久久久| 麻豆精品久久久一区二区| 九九精品成人免费国产片| 国产一区二区精品久久| 精品国产麻豆免费人成网站| 嫩草影院久久国产精品| 亚洲AV永久无码精品| 亚洲国产精品热久久| 热re99久久6国产精品免费| 98精品全国免费观看视频| 91精品国产自产在线老师啪| 国产精品合集一区二区三区|