日韩天天综合网_野战两个奶头被亲到高潮_亚洲日韩欧美精品综合_av女人天堂污污污_视频一区**字幕无弹窗_国产亚洲欧美小视频_国内性爱精品在线免费视频_国产一级电影在线播放_日韩欧美内地福利_亚洲一二三不卡片区

基于C#的接口基礎(chǔ)教程之五(7)_.Net教程

編輯Tag賺U幣
教程Tag:暫無Tag,歡迎添加,賺取U幣!

推薦:基于C#的接口基礎(chǔ)教程之四
  第四節(jié)、訪問接口   對接口成員的訪問   對接口方法的調(diào)用和采用索引指示器訪問的規(guī)則與類中的情況也是相同的。如果底層成員的命名與繼承而來的高層成員一致,那么底層成員將覆蓋同

  上面的兩種寫法都是正確的。但是如果接口成員在繼承中覆蓋了父接口的成員,那么對該接口成員的實(shí)現(xiàn)就可能必須映射到顯式接口成員執(zhí)行體�?聪旅娴睦樱�

interface IBase {
 int P { get; }
}
interface IDerived: IBase {
 new int P( ) ;
}

  接口IDerived從接口IBase中繼承,這時(shí)接口IDerived 的成員方法覆蓋了父接口的成員方法。因?yàn)檫@時(shí)存在著同名的兩個接口成員,那么對這兩個接口成員的實(shí)現(xiàn)如果不采用顯式接口成員執(zhí)行體,編譯器將無法分辨接口映射。所以,如果某個類要實(shí)現(xiàn)接口IDerived,在類中必須至少定義一個顯式接口成員執(zhí)行體。采用下面這些寫法都是合理的:

//一:對兩個接口成員都采用顯式接口成員執(zhí)行體來實(shí)現(xiàn)
lass C: IDerived {
 int IBase.P
 get
 { //具體的接口實(shí)現(xiàn)代碼 }
  int IDerived.P( ){
  //具體的接口實(shí)現(xiàn)代碼 }
 }
//二:對Ibase 的接口成員采用顯式接口成員執(zhí)行體來實(shí)現(xiàn)
class C: IDerived {
 int IBase.P
 get {//具體的接口實(shí)現(xiàn)代碼}
  public int P( ){
  //具體的接口實(shí)現(xiàn)代碼 }
 }
//三:對IDerived 的接口成員采用顯式接口成員執(zhí)行體來實(shí)現(xiàn)
class C: IDerived{
 public int P
 get {//具體的接口實(shí)現(xiàn)代碼}
 int IDerived.P( ){
 //具體的接口實(shí)現(xiàn)代碼}
}

  另一種情況是,如果一個類實(shí)現(xiàn)了多個接口,這些接口又擁有同一個父接口,這個父接口只允許被實(shí)現(xiàn)一次。

using System ;
interface IControl {
 void Paint( ) ;
 interface ITextBox: IControl {
 void SetText(string text) ;
}
interface IListBox: IControl {
 void SetItems(string[] items) ;
}
class ComboBox: IControl, ITextBox, IListBox {
 void IControl.Paint( ) {…}
 void ITextBox.SetText(string text) {…}
 void IListBox.SetItems(string[] items) {…}
}

  上面的例子中,類ComboBox實(shí)現(xiàn)了三個接口:IControl,ITextBox和IListBox。如果認(rèn)為ComboBox不僅實(shí)現(xiàn)了IControl接口,而且在實(shí)現(xiàn)ITextBox和IListBox的同時(shí),又分別實(shí)現(xiàn)了它們的父接口IControl。實(shí)際上,對接口ITextBox 和IListBox 的實(shí)現(xiàn),分享了對接口IControl 的實(shí)現(xiàn)。

  我們對C#的接口有了較全面的認(rèn)識,基本掌握了怎樣應(yīng)用C#的接口編程,但事實(shí)上,C#的不僅僅應(yīng)用于.NET平臺,它同樣支持以前的COM,可以實(shí)現(xiàn)COM類到.NET類的轉(zhuǎn)換,如C#調(diào)用API。欲了解這方面的知識,請看下一節(jié)-接口轉(zhuǎn)換。

分享:基于C#的接口基礎(chǔ)教程之三
  第三節(jié) 定義接口成員   接口可以包含一個和多個成員,這些成員可以是方法、屬性、索引指示器和事件,但不能是常量、域、操作符、構(gòu)造函數(shù)或析構(gòu)函數(shù),而且不能包含任何靜態(tài)成員。接口定

共7頁上一頁1234567下一頁
來源:模板無憂//所屬分類:.Net教程/更新時(shí)間:2008-08-22
相關(guān).Net教程