日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問(wèn)題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營(yíng)銷解決方案
詳解C#接口定義和繼承

我們將講解C#接口定義,以及C#接口的語(yǔ)法以及C#多重繼承的實(shí)現(xiàn),接口可以繼承其他接口。希望通過(guò)本文能對(duì)大家了解C#接口定義有所幫助。

C#接口定義

C#不支持多重繼承,但是客觀世界出現(xiàn)多重繼承的情況又比較多。為了避免傳統(tǒng)的多重繼承給程序帶來(lái)的復(fù)雜性等問(wèn)題,C# 提出了接口的概念。通過(guò)接口可以實(shí)現(xiàn)多重繼承的功能。

實(shí)現(xiàn)接口的類或結(jié)構(gòu)要與接口的定義嚴(yán)格一致。接口描述可屬于任何類或結(jié)構(gòu)的一組相關(guān)行為。接口可由方法、屬性、事件、索引器或這4種成員類型的任何組合構(gòu)成。接口不能包含字段。接口成員一定是公共的。

類和結(jié)構(gòu)可以像類繼承基類或結(jié)構(gòu)一樣從接口繼承,而且可以繼承多個(gè)接口。當(dāng)類或結(jié)構(gòu)繼承接口時(shí),它繼承成員定義但不繼承實(shí)現(xiàn)。若要實(shí)現(xiàn)接口成員,類中的對(duì)應(yīng)成員必須是公共的、非靜態(tài)的,并且與接口成員具有相同的名稱和簽名。類的屬性和索引器可以為接口上定義的屬性或索引器定義額外的訪問(wèn)器。例如,接口可以聲明一個(gè)帶有g(shù)et訪問(wèn)器的屬性,而實(shí)現(xiàn)該接口的類可以聲明同時(shí)帶有g(shù)et和set訪問(wèn)器的同一屬性。但是,如果屬性或索引器使用顯式實(shí)現(xiàn),則訪問(wèn)器必須匹配。

接口可以繼承其他接口。類可以通過(guò)其繼承的基類或接口多次繼承某個(gè)接口。在這種情況下,如果將該接口聲明為新類的一部分,則類只能實(shí)現(xiàn)該接口一次。如果沒(méi)有將繼承的接口聲明為新類的一部分,其實(shí)現(xiàn)將由聲明它的基類提供?;惪梢允褂锰摂M成員實(shí)現(xiàn)接口成員,在這種情況下,繼承接口的類可通過(guò)重寫虛擬成員來(lái)更改接口行為。

定義接口

接口的聲明采用下列格式:

 
 
 
  1. 修飾符 interface 接口名稱 :繼承的接口列表  
  2. {  
  3. 接口內(nèi)容;  

其中,除interface 和接口名稱,其他的都是可選項(xiàng),下面是一個(gè)C#接口定義的例子,代碼如下:

 
 
 
  1. public interface iSomeInterface  
  2. {  
  3. void UpdateDataBase();  

接口繼承

一個(gè)接口可以從一個(gè)或多個(gè)基接口繼承。例如:

 
 
 
  1. interface iOthrerInterface :iSomeInterface,iCom  
  2. {  
  3. int CompareTo(object obj);  

分享標(biāo)題:詳解C#接口定義和繼承
本文路徑:http://www.5511xx.com/article/cosiddg.html