国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

一圖看懂Java泛型通配符

Sleepy / 1488人閱讀

摘要:根據上面這些原則,一個簡單的例子如下,省略了和可以輸入任何及子類的對象能確定返回的對象一定是或父類的對象只能確定返回的對象一定是選擇限定通配符時的快速判斷方法參考

當使用 的時候,表明未知類的繼承結構處于 ObjectMyClass 之間,這時

編譯器只能確定任何返回該未知類型的方法,返回的變量都是 Object 的子類,所以返回的類型就確定為 Object,比如 getter 方法

使用該未知類型作為參數的方法,該參數一定是 MyClass 的父類,所以可以傳遞 MyClass 及其子類進去,比如 setter 方法

而使用 的時候,未知類型一定是 MyClass 的子類,但向下延伸到無窮盡,無法判斷

所以返回未知類型的方法的返回類型有一個上界,就是 MyClass,即返回類型確定為 MyClass

但是使用未知類型的方法,因為向下繼承無限延伸,無法判斷下界,所以不能使用該方法,比如 setter(可以 set(null))

使用 的時候,可以當作 ,即上界是 Object,可以使用 getter 方法,不可以使用 setter 方法。

根據上面這些原則,一個簡單的例子如下:

@Data // lombok,省略了 getter 和 setter
class Holder{
    private T t;

    public  void testSetter(Holder holder, U u) {
        holder.setT(u); // 可以輸入任何 MyClass 及子類的對象
        holder.setT(null);
    }

    public  void testGetter1(Holder holder) {
        MyClass obj = holder.getT(); // 能確定返回的對象一定是 MyClass 或父類的對象
    }

    public void testGetter2(Holder holder) {
        Object obj = holder.getT(); // 只能確定返回的對象一定是 Object
    }
}

class MyClass{}

選擇限定通配符時的快速判斷方法:

get-put principle:
Use an extends wildcard when you only get values out of a structure, use a super wildcard when you only put values into a structure, and don"t use a wildcard when you do both.

參考:
https://www.ibm.com/developerworks/java/library/j-jtp07018/index.html

文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。

轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/68547.html

相關文章

  • 【阿里云北京峰會】一圖看懂阿里云彈性裸金屬服務器如何幫助企業遷移上云

    長按圖片識別二維碼,立即咨詢阿里云上云專家!

    import. 評論0 收藏0
  • CloudBest:科普 | 一圖看懂 5G 從哪來的

    摘要:一個人的氣質里有走過的路讀過的書愛過的人又經歷了哪些故事呢引子一部高清電影秒秒鐘就能下載下來遠程游戲再也不會有卡頓和延遲的感覺了依托也出現了一系列的新東西,比如,車聯網自動駕駛遠程控制等等那從哪來的呢她經歷了怎樣的故事才走到如今的樣子本期將一個人的氣質里有走過的路、讀過的書、愛過的人5G 又經歷了哪些故事呢?引子一部高清電影 秒秒鐘 就能下載下來遠程游戲再也不會有卡頓和延遲的感覺了依托 5G...

    Tecode 評論0 收藏0
  • 追根溯源!圖看盡深度學習架構譜系

    摘要:近幾年,深度學習高速發展,出現了大量的新模型與架構,以至于我們無法理清網絡類型之間的關系。是由深度學習先驅等人提出的新一代神經網絡形式,旨在修正反向傳播機制。當多個預測一致時本論文使用動態路由使預測一致,更高級別的將變得活躍。 近幾年,深度學習高速發展,出現了大量的新模型與架構,以至于我們無法理清網絡類型之間的關系。在這篇文章中,香港科技大學(HKUST)助理教授金成勳總結了深度網絡類型之間...

    tinylcy 評論0 收藏0
  • 一張腦圖看懂BUI Webapp移動快速開發框架【下】--快速入門指引

    摘要:例如改成例如改成以上兩種開發方式都可以結合原生平臺打包成獨立應用。 繼上一篇一張腦圖看懂BUI Webapp移動快速開發框架【上】--框架與工具、資源 大綱 在線查看大綱 思路更佳清晰 1. 框架設計 框架介紹 簡介 BUI 是用來快速構建界面交互的UI交互框架, 專注webapp開發, 開發者只需關注業務的開發, 界面的布局及交互交給BUI, 開發出來的應用, 可以嵌入平臺 ( Li...

    hzx 評論0 收藏0

發表評論

0條評論

最新活動
閱讀需要支付1元查看
<