介麵包含類別或結構可以實現的一組相關功能的定義例如,使用介面可以在類別中包含來自多個來源的行為。由於C#語言不支援多重繼承,但是可以透過介面來實現多重繼承 。簡言之,介面只包含了成員(屬性、事件、索引器)的聲明。成員的定義具體怎麼實作由他的衍生類別決定。
聲明一個介面:
介面使用interface 關鍵字聲明,它與類別的聲明類似。介面宣告預設是 public 的,介面不能包含常數、欄位、運算子、實例建構子、析構函式或型別。介面成員會自動成為公用成員,不能包含任何存取修飾符。 成員也不能是靜態成員。例如:
public interface person //定義一個介面
{ void setname();} //宣告一個方法
一個介面的實例結果好像沒有什麼作用哦,如果去掉一樣能夠運行,
如果我們從設計的角度來看.一個項目中用若干個類需要去編寫,由於這些類比較複雜,工作量比較大,這樣每個類就需要佔用一個工作人員進行編寫.例如A程式設計師去定Dog類,B程式設計師去寫Cat類.這兩個類別本來沒什麼聯繫的,可是由於用戶需要他們都實現一個關於"叫"的方法.這就要對他們進行一種約束.讓他們都繼承於IBark接口,目的是方便統一管理.另一個是方便調用.當然了,不使用接口一樣可以達到目的.只不過這樣的話,這種約束就不那麼明顯,如果這樣類別還有Duck類別等等,比較多的時候難免有人會漏掉這樣方法.所以說還是透過介面更可靠一些,約束力更強一些.
以上就是 C#學習日記26---介面(interface )類型的內容,更多相關內容請關注PHP中文網(www.php.cn)!