導航:首頁 > 編程語言 > javatypeclass

javatypeclass

發布時間:2023-07-30 03:03:20

『壹』 java 怎麼獲取t的class

1. public Type getGenericSuperclass()
用來返回表示當前Class 所表示的實體(類、介面、基本類型或 void)的直接超類的Type。如果這個直接超類是參數化類型的,則返回的Type對象必須明確反映在源代碼中聲明時使用的類型。比如:

import java.lang.reflect.ParameterizedType;
public class GT1 extends GT2<Integer>{
public static void main(String[] args) {
System.out.println(((ParameterizedType)new GT1().getClass().getGenericSuperclass()));
}
}

則輸出結果即為:
GT2<java.lang.Integer>

如果此Class代表的是Object 類、介面、基本類型或 void,則返回 null。。如果此對象表示一個數組類,則返回表示 Object 類的 Class 對象。

2. public Type[] getGenericInterfaces()
與上面那個方法類似,只不過Java的類可以實現多個介面,所以返回的Type必須用數組來存儲。
以上兩個方法返回的都是Type對象或數組,在我們的這個話題中,Class都是代表的參數化類型,因此可以將Type對象Cast成ParameterizedType對象。而 ParameterizedType對象有一個方法, getActualTypeArguments()。
public Type[] getActualTypeArguments()
用來返回一個Type對象數組,這個數組代表著這個Type聲明中實際使用的類型。接著使用上面的例子:

import java.lang.reflect.ParameterizedType;
public class GT1 extends GT2<Integer>{
public static void main(String[] args) {
System.out.println(((ParameterizedType)new GT1().getClass().getGenericSuperclass()).getActualTypeArguments()[0]);
}
}

閱讀全文

與javatypeclass相關的資料

熱點內容
如何更改app後台 瀏覽:710
圖形化編程有面試題嗎 瀏覽:678
怎樣將文件夾中的文件上移 瀏覽:917
如何在盒馬app更換盒馬門店 瀏覽:747
淘寶壓縮圖教程 瀏覽:237
谷歌瀏覽器安卓怎麼用插件 瀏覽:78
商業源碼網vipym 瀏覽:598
使用阿里雲伺服器怎麼選操作系統 瀏覽:388
雙付天下app下載哪裡靠譜 瀏覽:245
pdf轉化圖片格式 瀏覽:762
如何向實體店推廣app 瀏覽:647
g32斜進刀反螺紋編程 瀏覽:542
android獲取已安裝的apk 瀏覽:811
app圖標如何放一起 瀏覽:720
雲伺服器設置通過ip訪問網站 瀏覽:914
生命代源碼女主角 瀏覽:740
空調扇加壓縮機 瀏覽:310
linux鏡像寫入 瀏覽:480
多媒體卡文件夾 瀏覽:30
java類轉map 瀏覽:856