C 基礎知識(八)泛型

2021-07-17 06:07:40 字數 589 閱讀 9890

泛型的好處很多,包括復用性(可供多個型別使用而不用每個型別都定義一次),型別安全(不合法的型別報錯),高效率(減少裝箱和拆箱)

舉例:假設我們有乙個父類animal,所有動物繼承這個類,現在需要做乙個比較動物重量的方法,如果不用泛型,則我們隊沒類動物都需要過載一次比較的方法:

public class animal

public int maxweight(car other) // 貓和其他動物比較

public int maxweight(dog other)  //狗和其他動物比較

}public class car : animal

{}public class dog : animal

{}如果我們接下來還要增加其他的動物,則還需要寫一次方法。

而我們使用泛型則很簡單:

public class animal

public int maxweight(t other) where t : animal

}public class car : animal

{}public class dog : animal

{}只要是繼承animal的動物全部可以進行比較

C 基礎知識 泛型程式設計 模板

類模板首先思考乙個問題 如何實現乙個通用的交換函式呢?這裡很多人可能會想到函式過載,沒錯,函式過載可以實現不同型別資料的交換,但是也有很大的缺陷 過載的函式僅僅只是型別不同,的復用率比較低,只要有新型別出現時,就需要增加對應的函式 的可維護性比較低,乙個出錯可能所有的過載均出錯 那能否給編譯器乙個模...

泛型的基礎知識整理

泛型就是將具體的型別引數化,將型別定義成引數形式,等到使用的時候再傳入具體的型別。泛型可以使用在類 介面和方法中。泛型的優勢 編譯時檢查 的型別安全,從而減少出錯的概率 消除了強制型別轉換,沒有泛型的返回值,我們可以認為是乙個object,在使用時需要對其進行強制轉換,這樣就可能會出現classca...

spring基礎知識 (16) 泛型依賴注入

spring 4.x以上版本才有 建立兩個帶泛型的類,並配置兩者的依賴關係,對於繼承這兩個類的子類,如果泛型相同,則會繼承這種依賴關係 如上圖 定義了兩個泛型base類 baseservice和baserepository 對於userservice和userrpository分別繼承兩個base類...