您好,登錄后才能下訂單哦!
本篇內容介紹了“C#接口成員舉例分析”的有關知識,在實際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領大家學習一下如何處理這些情況吧!希望大家仔細閱讀,能夠學有所成!
C#接口編程之接口成員定義說明:
·接口的成員是從基接口繼承的成員和由接口本身定義的成員。
·接口定義可以定義零個或多個成員。接口的成員必須是方法、屬性、事件或索引器。接口不能包含常數、字段、運算符、實例構造函數、析構函數或類型,也不能包含任何種類的靜態成員。
·定義一個接口,該接口對于每種可能種類的成員都包含一個:方法、屬性、事件和索引器。
·接口成員默認訪問方式是public。接口成員定義不能包含任何修飾符,比如成員定義前不能加abstract,public,protected,internal,private,virtual,override 或static 修飾符。
·接口的成員之間不能相互同名。繼承而來的成員不用再定義,但接口可以定義與繼承而來的成員同名的成員,這時我們說接口成員覆蓋了繼承而來的成員,這不會導致錯誤,但編譯器會給出一個警告。關閉警告提示的方式是在成員定義前加上一個new關鍵字。但如果沒有覆蓋父接口中的成員,使用new關鍵字會導致編譯器發出警告。
·方法的名稱必須與同一接口中定義的所有屬性和事件的名稱不同。此外,方法的簽名必須與同一接口中定義的所有其他方法的簽名不同。
·屬性或事件的名稱必須與同一接口中定義的所有其他成員的名稱不同。
·一個索引器的簽名必須區別于在同一接口中定義的其他所有索引器的簽名。
·接口方法聲明中的屬性(attributes), 返回類型(return-type), 標識符(identifier)和形式參數列表(formal-parameter-lis)與一個類的方法聲明中的那些有相同的意義。一個接口方法聲明不允許指定一個方法主體,而聲明通常用一個分號結束。
·接口屬性聲明的訪問符與類屬性聲明的訪問符相對應,除了訪問符主體通常必須用分號。因此,無論屬性是讀寫、只讀或只寫,訪問符都完全確定。
·接口索引聲明中的屬性(attributes),類型(type)和形式參數列表(formal-parameter-list)與類的索引聲明的那些有相同的意義。
下面例子中接口IMyTest包含了索引指示器、事件E、方法F、屬性P這些成員:
interface IMyTest{ string this[int index] { get; set; } event EventHandler E ; void F(int value) ; string P { get; set; } } public delegate void EventHandler(object sender, EventArgs e) ;
下面例子中接口IStringList包含每個可能類型成員的接口:一個方法,一個屬性,一個事件和一個索引。
public delegate void StringListEvent(IStringList sender); public interface IStringList { void Add(string s); int Count { get; } event StringListEvent Changed; string this[int index] { get; set; } }
C#接口編程之接口成員的全權名
使用接口成員也可采用全權名(fully qualified name)。接口的全權名稱是這樣構成的。接口名加小圓點"." 再跟成員名比如對于下面兩個接口:
interface IControl { void Paint( ) ; } interface ITextBox: IControl { void GetText(string text) ; }
其中Paint 的全權名是IControl.Paint,GetText的全權名是ITextBox. GetText。當然,全權名中的成員名稱必須是在接口中已經定義過的,比如使用ITextBox.Paint.就是不合理的。
如果接口是名字空間的成員,全權名還必須包含名字空間的名稱。
namespace System { public interface IDataTable { object Clone( ) ; } }
那么Clone方法的全權名是System. IDataTable.Clone。
“C#接口成員舉例分析”的內容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業相關的知識可以關注億速云網站,小編將為大家輸出更多高質量的實用文章!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。