接口
在接口中定義方法
1.實(shí)現(xiàn)接口的任何類或結(jié)構(gòu)必須實(shí)現(xiàn)其所有成員的方法
2.接口不能直接實(shí)例化居夹,但是可以通過指向子類簡介實(shí)例化
3.接口可以包含方法和屬性的聲明,但不能包含字段
4.接口中所有方法本冲、屬性默認(rèn)為public准脂,不能在后面添加訪問修飾符
5.類或結(jié)構(gòu)可以實(shí)現(xiàn)多個(gè)接口,類可以繼承基類并實(shí)現(xiàn)一個(gè)或多個(gè)借口
接口與抽象類比較
1.兩者都包含可以由子類繼承的抽象成員
2.兩者都不能直接實(shí)例化
3.都定義了一些未實(shí)現(xiàn)的屬性和方法
4.抽象類除擁有抽象成員之外檬洞,還可以擁有非抽象成員狸膏,而接口所有成員都是抽象的
5.抽象成員可以是私有的,而接口的成員默認(rèn)是共有
6.接口中不能含有構(gòu)造函數(shù)添怔、析構(gòu)函數(shù)湾戳、靜態(tài)成員和常量
泛型
使用泛型的優(yōu)點(diǎn)
1.使用泛型類型可以最大限度地重用代碼、保護(hù)類型的安全以及提高性能
2.降低了強(qiáng)制轉(zhuǎn)換或裝箱操作的成本或風(fēng)險(xiǎn)
3.可以對泛型類進(jìn)行約束以訪問特定數(shù)據(jù)類型的方法
缺點(diǎn)
泛型成員類型不確定广料,不能使用算術(shù)運(yùn)算符砾脑、比較運(yùn)算符等等
泛型的約束:可以約束泛型為值類型或引用類型,也可以約束泛型必須實(shí)現(xiàn)某個(gè)或多個(gè)接口