日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

java如何使用类数组_java – 如何使用泛型与数组的类?

發布時間:2023/12/3 编程问答 22 豆豆
生活随笔 收集整理的這篇文章主要介紹了 java如何使用类数组_java – 如何使用泛型与数组的类? 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

我想創建一個Classes數組,每個都代表我正在構建的系統中可用的類型。所有涉及的類都是公共超類的子類。所以我想做:

Class extends SuperClass>[] availableTypes = { SubClass1.class, SubClass2.class };

這給我錯誤:

Cannot create a generic array of Class extends SuperClass>.

我得到相同的消息,如果我嘗試限定在初始化的右手邊的數組的創建:

Class extends SuperClass>[] availableTypes = Class extends SuperClass>[] { SubClass1.class, SubClass2.class };

我可以得到代碼編譯如果我消除泛型資格:

Class[] availableTypes = { SubClass1.class, SubClass2.class };

但是后來我得到泛型警告:

類是原始類型。引用泛型類應該參數化。

我嘗試著;我嘗試著! :)此外,在這一點上,即使這沒有引起警告,我失去了一個接口,我試圖定義。我不想只返回一個任意類的數組;我想返回一個類的數組,它是特定SuperClass的所有子類!

Eclipse有一些非常強大的工具來找出什么參數用于修復泛型聲明,但在這種情況下,它會下降,因為它傾向于當你處理Class。它提供的“Infer Generic Type Arguments”過程不會改變代碼,留下警告。

我可以解決這個問題,使用集合代替:

List> availableTypes = new List>();

但是什么是正確的方法來做這個數組?

總結

以上是生活随笔為你收集整理的java如何使用类数组_java – 如何使用泛型与数组的类?的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。