首頁 > Java > java教程 > Java 泛型是如何做的? super` 通配符的工作原理及其限制是什麼?

Java 泛型是如何做的? super` 通配符的工作原理及其限制是什麼?

DDD
發布: 2024-11-25 06:17:16
原創
630 人瀏覽過

How Do Java Generics' `? super` Wildcards Work and What Are Their Limitations?

Java 泛型Super 關鍵字

理解有界通配符

當我們將有界通配符與super 一起使用時,表示類型參數可以是指定型別或其任何超類別。例如,列表表示列表可以保存 Number 類型的物件或其任何父類別

將元素加入有界通配符

在第一個範例中,清單 list 宣告為清單不能接受 Object,因為 Object 不是 Number 的子類別。另一方面,Integer 是 Number 的子類,因此可以將其新增至清單。

使用 Super 關鍵字的編譯錯誤

在第二個範例中,您嘗試傳遞 List到需要 List 的方法超級數字>。出現此編譯錯誤是因為 String 不是 Number 的子類別。您提出的邏輯不正確:物件不是 Number 的超類,String 不是 Number 的子類別。

限制 通配符

與下限通配符不同,上限通配符不能用作生產者。這表示您無法從 List 中取得單一元素。超數字>。此限制的存在是為了防止類型安全違規。

結論

帶有 super 的有界通配符允許我們創建可以使用從公共超類繼承的多種類型的對象的集合。但是,在向這些集合添加元素時我們應該小心,因為我們不能添加不是指定超類別的子類別的物件。

以上是Java 泛型是如何做的? super` 通配符的工作原理及其限制是什麼?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板