C 介面與顯式介面實現

2021-09-26 10:17:30 字數 979 閱讀 3237

介面

介面包含類或結構可以實現一組相關功能的定義。

inte***ce iequatable
繼承iequatable的類必須實現equals的方法,iequatable不提供equals的實現。

介面可以包含方法、屬性、事件、索引器。 介面不能包含常量、字段、運算子、例項建構函式、終結器或型別。介面成員會自動稱為公有成員,不能包含任何訪問符。成員也不能是靜態成員。

介面可以從其他介面繼承。 類可能通過它繼承的基類或通過其他介面繼承的介面來多次包含某個介面。 但是,類只能提供介面的實現一次,並且僅當類將介面作為類定義的一部分 (class classname : inte***cename) 進行宣告時才能提供。 如果由於繼承實現介面的基類而繼承了介面,則基類會提供介面的成員的實現。 但是,派生類可以重新實現任何虛擬介面成員,而不是使用繼承的實現。

顯示介面實現

當乙個類繼承了多個介面的時候,這些介面中包含簽名相同的方法,則在此類上實現此成員會導致,這些介面都將此方法作為實現。

class program

}inte***ce icontrol

inte***ce isu***ce

public class sampleclass:icontrol , isu***ce

}

但是,如果介面成員實現不同的功能,則會導致介面實現不正確,建立僅通過介面呼叫且特定於該介面的類成員,則有可能顯式實現介面成員。 這可通過使用介面名稱和句點命名類成員來完成。

class program

}inte***ce icontrol

inte***ce isu***ce

public class sampleclass:icontrol , isu***ce

void icontrol.paint()

void isu***ce.paint()

}

介面與顯式實現介面

鴨子是一種鳥,會游泳,同時又是一種食物。c 中所有的類都只能有乙個父類,c 引入了介面 inte ce 這一概念,並規定 乙個類可以實現多個介面 關鍵字inte ce 用於定義介面。定義兩個介面 public inte ce iswim public inte ce ifood 介面可以看成是一種 ...

C 顯式介面實現和隱式介面實現

介面的實現分為 隱式實現和顯式實現。隱式介面實現 如果類或者結構要實現的是單個介面,可以使用隱式實現。顯式介面實現 如果類或者結構繼承了多個介面,那麼介面中相同名稱成員就要顯式實現。顯示實現是通過使用介面的完全限定名來實現介面成員的。使用顯式介面成員執行體通常有兩個目的 1 因為顯式介面成員執行體不...

實現介面與顯式實現介面的區別

在實現介面的時候,vs提供了兩個選單,乙個是 實現介面 乙個是 顯式實現介面 它們到底有何不一樣呢 我們來比較一下看看 1.首先假設我們有乙個介面 public inte ce icustomer 2.如果是 實現介面 那麼 大致如下 public class customer icustomer ...