新聞中心
本文向大家介紹C#類實現(xiàn)接口,可能好多人還不知道C#類實現(xiàn)接口,沒有關(guān)系,看完本文你肯定有不少收獲,希望本文能教會你更多東西。

創(chuàng)新互聯(lián)建站-專業(yè)網(wǎng)站定制、快速模板網(wǎng)站建設(shè)、高性價比拉薩網(wǎng)站開發(fā)、企業(yè)建站全套包干低至880元,成熟完善的模板庫,直接使用。一站式拉薩網(wǎng)站制作公司更省心,省錢,快速模板網(wǎng)站建設(shè)找我們,業(yè)務(wù)覆蓋拉薩地區(qū)。費用合理售后完善,十年實體公司更值得信賴。
C#類實現(xiàn)接口
前面我們已經(jīng)說過,接口定義不包括方法的實現(xiàn)部分。接口可以通過類或結(jié)構(gòu)來實現(xiàn)。我們主要講述通過類來實現(xiàn)接口。用類來實現(xiàn)接口時,接口的名稱必須包含在類定義中的基類列表中。
下面的例子給出了C#類實現(xiàn)接口的例子。其中ISequence 為一個隊列接口,提供了向隊列尾部添加對象的成員方法Add( ),IRing 為一個循環(huán)表接口,提供了向環(huán)中插入對象的方法Insert(object obj),方法返回插入的位置。類RingSquence 實現(xiàn)了接口ISequence 和接口IRing。
- using System ;
- interface ISequence {
- object Add( ) ;
- }
- interface ISequence {
- object Add( ) ;
- }
- interface IRing {
- int Insert(object obj) ;
- }
- class RingSequence: ISequence, IRing
- {
- public object Add( ) {…}
- public int Insert(object obj) {…}
- }
如果類實現(xiàn)了某個接口,類也隱式地繼承了該接口的所有父接口,不管這些父接口有沒有在類定義的基類表中列出??聪旅娴睦樱?/p>
- using System ;
- interface IControl {
- void Paint( );
- }
- interface ITextBox: IControl {
- void SetText(string text);
- }
- interface IListBox: IControl {
- void SetItems(string[] items);
- }
- interface IComboBox: ITextBox, IListBox { }
這里, 接口IcomboBox繼承了ItextBox和IlistBox。類TextBox不僅實現(xiàn)了接口ITextBox,還實現(xiàn)了接口ITextBox 的父接口IControl。
前面我們已經(jīng)看到,一個類可以實現(xiàn)多個接口。再看下面的例子:
- interface IDataBound {
- void Bind(Binder b);
- }
- public class EditBox: Control, IControl, IDataBound {
- public void Paint( );
- public void Bind(Binder b) {...}
- }
類EditBox從類Control中派生并且實現(xiàn)了Icontrol和IdataBound。在前面的例子中接口Icontrol中的Paint方法和IdataBound接口中的Bind方法都用類EditBox中的公共成員實現(xiàn)。C#提供一種實現(xiàn)這些方法的可選擇的途徑,這樣可以使執(zhí)行這些的類避免把這些成員設(shè)定為公共的。C#類實現(xiàn)接口成員可以用有效的名稱。
【編輯推薦】
- C# this關(guān)鍵字詳解
- C#調(diào)用析構(gòu)方法詳解
- C#釋放托管資源簡單描述
- C#單路代理簡單分析
- C#文法產(chǎn)生式概述
當(dāng)前名稱:C#類實現(xiàn)接口簡單介紹
文章源于:http://m.fisionsoft.com.cn/article/djdjjhp.html


咨詢
建站咨詢
