導航:首頁 > 編程語言 > 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相關的資料

熱點內容
大學文件夾怎麼刪除 瀏覽:665
linux科研軟體 瀏覽:550
ue4打包編譯著色器 瀏覽:772
雲伺服器可以在手機上登錄嗎 瀏覽:673
網游腳本為什麼要連接伺服器 瀏覽:4
程序員發展路線圖 瀏覽:318
手機語音加密會議 瀏覽:587
冰與火pdf 瀏覽:416
為什麼叫我買阿里雲伺服器 瀏覽:470
加密貨幣征稅一覽表 瀏覽:959
llc編譯器 瀏覽:922
數控可編程電阻器 瀏覽:757
培訓app源碼 瀏覽:431
phpcurl啟用 瀏覽:533
ubuntu圖形編程 瀏覽:441
jar包啟動命令 瀏覽:680
java數組一維轉二維 瀏覽:500
office批量轉pdf 瀏覽:185
boss直聘程序員多少薪 瀏覽:633
編程字母代表什麼 瀏覽:954