的一個示例它由java製成,泛型不會自動從Generic<A>
轉換爲Generic<SupeclassOfA>
。列表<?>與列表<Object>不相同
例如,如果寫一個方法
public static void printList(List<Object> list) {
for (Object elem : list)
System.out.println(elem + " ");
System.out.println();
}
它不會接受List<Integer>
。我需要重寫List<?>
的頭文件,它將開始工作,但代碼將會相同。
那麼,爲什麼這樣做?
假設我重新設計了Java
,因此List<?>
總是表示與List<Object>
相同。我會面對什麼問題?
嘗試添加到列表中的東西。 –
這個問題在很多方面都被問過幾十次。請先搜索現有問題。 –