91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

C#接口的定義是什么

發布時間:2021-07-16 10:35:51 來源:億速云 閱讀:268 作者:chen 欄目:編程語言

這篇文章主要介紹“C#接口的定義是什么”,在日常操作中,相信很多人在C#接口的定義是什么問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”C#接口的定義是什么”的疑惑有所幫助!接下來,請跟著小編一起來學習吧!

全面解析C#接口的定義
C#接口的定義從技術上講,接口是一組包含了函數型方法的數據結構。通過這組數據結構,客戶代碼可以調用組件對象的功能。

C#接口的定義一般形式為:

[attributes] [modifiers] interface identifier [:base-list] {interface-body}[;]

C#接口的定義說明:

· attributes(可選):附加的定義性信息。

· modifiers(可選):允許使用的修飾符有new和四個訪問修飾符。分別是:new、public、protected、internal、private。在一個接口定義中同一修飾符不允許出現多次,new修飾符只能出現在嵌套接口中,表示覆蓋了繼承而來的同名成員。The public, protected, internal, and private修飾符定義了對接口的訪問權限。

· 指示器和事件。

· identifier:接口名稱。

· base-list(可選):包含一個或多個顯式基接口的列表,接口間由逗號分隔。

· interface-body:對接口成員的定義。

· 接口可以是命名空間或類的成員,并且可以包含下列成員的簽名: 方法、屬性、索引器 。

· 一個接口可從一個或多個基接口繼承。

接口這個概念在C#和Java中非常相似。接口的關鍵詞是interface,一個接口可以擴展一個或者多個其他接口。按照慣例,接口的名字以大寫字母"I"開頭。下面的代碼是C#接口的一個例子,它與Java中的接口完全一樣:

interface IShape  {       void Draw ( ) ;  }

如果你從兩個或者兩個以上的接口派生,父接口的名字列表用逗號分隔,如下面的代碼所示:

interface INewInterface: IParent1, IParent2 { }

然而,與Java不同,C#中的接口不能包含域(Field)。另外還要注意,在C#中,接口內的所有方法默認都是公用方法。在Java中,方法定義可以帶有public修飾符(即使這并非必要),但在C#中,顯式為接口的方法指定public修飾符是非法的。例如,下面的C#接口將產生一個編譯錯誤。

interface IShape { public void Draw( ) ; }

下面的例子定義了一個名為IControl 的接口,接口中包含一個成員方法Paint:

interface IControl {  void Paint( ) ;  }

在下例中,接口 IInterface從兩個基接口 IBase1 和 IBase2 繼承:

interface IInterface: IBase1, IBase2 {     void Method1( ) ;     void Method2( ) ;  }

接口可由類實現。實現的接口的標識符出現在類的基列表中。例如:

class Class1: Iface1, Iface2 {     // class 成員。  }

類的基列表同時包含基類和接口時,列表中首先出現的是基類。例如:

class ClassA: BaseClass, Iface1, Iface2 {     // class成員。  }

以下的代碼段定義接口IFace,它只有一個方法:

interface IFace {    void ShowMyFace( ) ;  }

不能從這個定義實例化一個對象,但可以從它派生一個類。因此,該類必須實現ShowMyFace抽象方法:

class CFace:IFace  {    public void ShowMyFace( )   {      Console.WriteLine(" implementation " ) ;     }   }

C#接口的定義之基接口

一個接口可以從零或多個接口繼承,那些被稱為這個接口的顯式基接口。當一個接口有比零多的顯式基接口時,那么在接口的定義中的形式為,接口標識符后面跟著由一個冒號":"和一個用逗號","分開的基接口標識符列表。

C#接口的定義之接口基:

接口類型列表說明:

· 一個接口的顯式基接口必須至少同接口本身一樣可訪問。例如,在一個公共接口的基接口中指定一個私有或內部的接口是錯誤的。

· 一個接口直接或間接地從它自己繼承是錯誤的。

· 接口的基接口都是顯式基接口,并且是它們的基接口。換句話說,基接口的集合完全由顯式基接口和它們的顯式基接口等等組成。在下面的例子中

interface IControl {   void Paint( ) ;  }  interface ITextBox: IControl {   void SetText(string text) ;  }  interface IListBox: IControl {   void SetItems(string[] items) ;  }  interface IComboBox: ITextBox, IListBox { }

IComboBox 的基接口是IControl, ITextBox, 和 IlistBox。

· 一個接口繼承它的基接口的所有成員。換句話說,上面的接口IComboBox就像Paint一樣繼承成員SetText 和 SetItems。

· 一個實現了接口的類或結構也隱含地實現了所有接口的基接口。

C#接口的定義之接口主體

一個接口的接口主體定義接口的成員。

interface-body:  {   interface-member-declarationsopt   }

到此,關于“C#接口的定義是什么”的學習就結束了,希望能夠解決大家的疑惑。理論與實踐的搭配能更好的幫助大家學習,快去試試吧!若想繼續學習更多相關知識,請繼續關注億速云網站,小編會繼續努力為大家帶來更多實用的文章!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

盖州市| 绥滨县| 江阴市| 沙洋县| 华容县| 习水县| 南充市| 阿城市| 黄陵县| 棋牌| 孙吴县| 蕲春县| 长岛县| 新宁县| 梅河口市| 扎赉特旗| 五家渠市| 彰武县| 托里县| 内乡县| 灌云县| 二手房| 内江市| 成安县| 汶川县| 奉化市| 思茅市| 莲花县| 资中县| 乐东| 齐河县| 轮台县| 锡林浩特市| 平罗县| 安徽省| 石门县| 洛宁县| 长乐市| 德昌县| 越西县| 永平县|