泛型的三種形式

2021-10-03 13:56:32 字數 1143 閱讀 5114

說到泛型大家基本都知道< t >這個符號,類似的< e > < k >等等就不去談了,其實用起來都一樣的,那麼這個< t >是用來幹嘛的,其實啊這是泛型三種形式的宣告標識。

三種形式分別是 :泛型類,泛型介面,泛型方法,目前就這三種別扯別的了。

在類名的後面加上< t >這就是泛型類了,這是最簡單的泛型類

< t >是泛型三種形式的宣告標誌,t 代表的是引用型別,具體t代表的是哪個引用型別由兩種途徑決定, 第一種是在泛型(類例項化/介面被實現)時給< t >中的 t 替換成具體的引用型別,這樣例項化物件的(屬性型別/方法中的引數型別)就和之前替換的型別一致,如果(賦值/傳參)的引用型別不一致就會報錯。還有一種後面講

他們的區別在於有沒有< t >,泛型類中的方法前面已經有了,在第二,三張圖中getdata方法就是,再來看看泛型方法

這裡的getdata才是泛型方法

就是賦值,或者傳參,a屬性賦值乙個integer型別的值,方法中的o引數我們傳入string型別的值,再用getclass方法獲取他們的類模板,看執行結果

還有乙個泛型介面就不說了,和類差不多,自己去悟,這些內容沒有點出泛型存在意義,寫這些是為了讓入門小白知道泛型的形式,其實我也是小白。。。結尾提一下泛型的意義:基本所有的集合都是泛型類,而泛型存在的意義是為了約束,對於集合而言,是為了約束存入集合的資料型別,比如:list集合只要存string型別的資料時,那麼例項化時給標識傳參list list= new linkedlist,這樣就可以避免存入其他型別的資料。這些也是我個人的理解僅供參考

三種泛型委託簡介

1 泛型委託 predicate 早在framework 2.0 的時候,微軟就為 list類新增了 find findall foreach 等方法用作資料的查詢。public t find predicatematch public listfindall predicatematch 在這些方...

if 語句的三種形式

if 語句的三種形式 第一種形式為基本形式 if 如果表示式的值為真,則執行其後的語句,否則不執行該語句。第二種形式為 if else 如果表示式的值為真,則執行語句1,否則執行語句2。第三種形式為 if else if 依次判斷表示式的值,當出現某個值為真時,則執行其對應的語句。然後跳到整個if語...

javascript三種函式形式

1.普通函式 function show message show test 定義 同python中函式定義方法一致,關鍵字替換為function 執行 呼叫方法和一般語言中呼叫方法一致,可有返回值 2.匿名函式 setinterval function 1000 a function messag...