接口是一種規范。只要一個類繼承了一個接口,這個類就必須實現這個接口中所有的成員
為了多態。 接口不能被實例化。
也就是說,接口不能new(不能創建對象)
接口中的成員不能加“訪問修飾符”,接口中的成員訪問修飾符為public,不能修改。
(默認為public)
接口中的成員不能有任何實現(“光說不做”,只是定義了一組未實現的成員)。
接口中只能有方法、屬性、索引器、事件,不能有“字段”和構造函數。
接口與接口之間可以繼承,並且可以多繼承。
接口並不能去繼承一個類,而類可以繼承接口 (接口只能繼承於接口,而類既可以繼承接口,也可以繼承類)
實現接口的子類必須實現該接口的全部成員。
一個類可以同時繼承一個類並實現多個接口,如果一個子類同時繼承了父類A,並實現了接口IA,那麼語法上A必須寫在IA的前面。
class MyClass:A,IA{},因為類是單繼承的。
顯示實現接口的目的:解決方法的重名問題
什麼時候顯示的去實現接口:
當繼承的借口中的方法和參數一摸一樣的時候,要是用顯示的實現接口
當一個抽象類實現接口的時候,需要子類去實現接口。