C#接口
什麼是接口
接口定義了所有類繼承接口時應遵循的語法合同。接口定義了語法合同 “是什麼” 部分,派生類定義了語法合同 "怎麼做"部分。
接口中有哪些成員
接口定義了屬性、方法和事件,這些都是接口的成員。接口只包含了成員的聲明。成員的定義是派生類的責任。接口提供了派生類應遵循的標準結構。
接口的規則
-
接口必須使用interface關鍵字聲明
-
接口中只能放成員的聲明(只有函數簽名,沒有函數體)
-
繼承接口必須實現接口中的所有成員
-
可以繼承多個接口,每個接口中的成員都必須實現
-
接口可以隔代繼承,同樣每一代的接口成員最終都要實現
接口的實現
-
隱式實現,以上的實現方式全都是隱式實現
-
顯示實現,使用接口名點成員實現
總結
類 | 接口 | 抽象 | 虛擬 |
---|---|---|---|
普通成員 | 成員聲明 | 普通成員和抽象成員 | 普通成員和虛擬成員 |
只能用public和internal | 只能用public和interna l | 只能用public和interna l | 只能用public和internal |
成員訪問修飾符,各種都可以 | 成員不能用任何訪問修飾符 | 成員不能使用private | 成員不能使用private |
只能繼承一個 | 可以繼承多個 | 只能繼承一個 | 只能繼承一個 |
可隱藏父類成員 | 不可以隱藏父類成員 | 必須重寫父類抽象成員 | 可以重寫虛擬成員也可不重寫 |