[英]class with generic type variable List
我正在閱讀有關泛型類型的信息。 我能夠理解,泛型類型可用於指定對象或集合可以使用的內容類型,以避免運行時錯誤並僅在編譯時解決它。
我想知道如何創建其類型變量(T = List)為List的泛型類。 例如,在下面的示例中,它的字符串。
import java.util.ArrayList;
import java.util.List;
public class Test<T> {
T string;
public Test(T in) {
this.string = in;
}
public static void main(String args[]) {
Test<String> o = new Test<String>("Generic");
}
}
我想知道如何創建其類型變量(T = List)為List的泛型類。
將List
指定為參數化類型。
要擁有List<String>
的通用測試,例如:
List<String> myList = new ArrayList<>();
...
Test<List<String>> o = new Test<>(myList);
如果您希望您的列表嚴格是字符串列表。 然后只需將您的列表聲明為List<String>
通過這種方式,開發人員有義務使用屬於Collection es的類(List,ArrayList,Vector等)。
public class Test<T extends Collection>{ ... }
更新
public class Test<E,T extends Collection<E>>{ ... }
只需像聲明List的擴展一樣聲明您的T即可:
public class Test<T> {
對此
public class Test<T extends List> {
在這種情況下,您將無法編寫以下代碼:
Test<String> o = new Test<String>();
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.