泛型的使用1

2021-10-05 13:03:37 字數 1143 閱讀 8801

泛型只在編譯期間有效,並且在編譯期間會驗證傳入的值是否為泛型型別的值,如果不是對應泛型的值,將會報錯:

此時的建構函式的值應該是泛型的型別的值,也就是string型別的值,否則會報錯。

2.如下圖說明了,泛型在編譯成class檔案會被擦除,也就是執行的是同乙個class檔案,此處和jvm的類載入相關。不贅述

3.如果沒有傳入對應的泛型,則是object型別,因為object能相容所有型別,所以可以傳入任何引數,如下圖

4.當介面有泛型時

如果其子類沒有泛型,實現的介面也不能用泛型,此時預設是object型別

![在這裡插入描述](

還有一種情況是子類有泛型,而父類沒有泛型,此時實現的介面還是object型別

一種情況是,子類有指定泛型,父類也有指定泛型

那麼對應的方法就是t型別,實現父類的方法。

還有一種情況:

直接在實現父類的方法指定其泛型,如果實現方法有用到父類的泛型,那麼就使用指定的泛型

總結第4點:當父類沒有泛型的時候,預設繼承igeneric類,父類的泛型預設變成object,所以不管子類是否有泛型,實現的方法如果帶有父類的泛型都是object

泛型的使用

unit unit1 inte ce uses winapi.windows,winapi.messages,system.sysutils,system.variants,system.classes,vcl.graphics,vcl.controls,vcl.forms,vcl.dialogs ...

泛型的使用

泛型是什麼,為什麼使用泛型 泛型是指宣告時不指定型別,使用時指定型別,用編譯時用來宣告型別,使用時指定型別。這就意味著意味著編寫的 可以被不同型別的物件所重用。在集合中如果使用object型別,那麼在使用過程中我們需要進行強制轉換型別,並且在編譯過程中不能夠進行型別轉換檢查異常。這樣就會容易在執行過...

泛型的使用

目前這個專案使用的jsp servlet j abean,沒有使用其它的框架。在處理資料庫的時候,多張表就對應多個dao,而每個dao都有增刪改查的方法,顯得很冗餘。於是寫了乙個commondao,其中包含了其他dao裡面共有的一些方法。然後讓其他的dao類繼承commondao,servlet中直...