基于C#的接口基礎(chǔ)教程之七_(dá).Net教程
推薦:基于C#的接口基礎(chǔ)教程之六 第六節(jié)、接口轉(zhuǎn)換 C#中不僅支持.Net 平臺,而且支持COM平臺。為了支持 COM和.Net,C# 包含一種稱為屬性的獨特語言特性。一個屬性實際上就是一個 C# 類,它通過修飾源代碼來提供元信息
第七節(jié)、覆蓋虛接口
有時候我們需要表達(dá)一種抽象的東西,它是一些東西的概括,但我們又不能真正的看到它成為一個實體在我們眼前出現(xiàn),為此面向?qū)ο蟮木幊陶Z言便有了抽象類的概念。C#作為一個面向?qū)ο蟮恼Z言,必然也會引入抽象類這一概念。接口和抽象類使您可以創(chuàng)建組件交互的定義。通過接口,可以指定組件必須實現(xiàn)的方法,但不實際指定如何實現(xiàn)方法。抽象類使您可以創(chuàng)建行為的定義,同時提供用于繼承類的一些公共實現(xiàn)。對于在組件中實現(xiàn)多態(tài)行為,接口和抽象類都是很有用的工具。
一個抽象類必須為類的基本類列表中列出的接口的所有成員提供實現(xiàn)程序。但是,一個抽象類被允許把接口方法映射到抽象方法中。例如
interface IMethods {
void F();
void G();
}
abstract class C: IMethods
{
public abstract void F();
public abstract void G();
}
這里, IMethods 的實現(xiàn)函數(shù)把F和G映射到抽象方法中,它們必須在從C派生的非抽象類中被覆蓋。
注意顯式接口成員實現(xiàn)函數(shù)不能是抽象的,但是顯式接口成員實現(xiàn)函數(shù)當(dāng)然可以調(diào)用抽象方法。例如
interface IMethods
{
void F();
void G();
}
abstract class C: IMethods
{
void IMethods.F() { FF(); }
void IMethods.G() { GG(); }
protected abstract void FF();
protected abstract void GG();
}
這里,從C派生的非抽象類要覆蓋FF 和 GG, 因此提供了IMethods的實際實現(xiàn)程序。
分享:基于C#的接口基礎(chǔ)教程之五 第五節(jié)、實現(xiàn)接口 1、顯式實現(xiàn)接口成員 為了實現(xiàn)接口,類可以定義顯式接口成員執(zhí)行體(Explicit interface member implementations)。顯式接口成員執(zhí)行體可以是一個方法、一個
- asp.net如何得到GRIDVIEW中某行某列值的方法
- .net SMTP發(fā)送Email實例(可帶附件)
- js實現(xiàn)廣告漂浮效果的小例子
- asp.net Repeater 數(shù)據(jù)綁定的具體實現(xiàn)
- Asp.Net 無刷新文件上傳并顯示進(jìn)度條的實現(xiàn)方法及思路
- Asp.net獲取客戶端IP常見代碼存在的偽造IP問題探討
- VS2010 水晶報表的使用方法
- ASP.NET中操作SQL數(shù)據(jù)庫(連接字符串的配置及獲取)
- asp.net頁面?zhèn)髦禍y試實例代碼
- DataGridView - DataGridViewCheckBoxCell的使用介紹
- asp.net中javascript的引用(直接引入和間接引入)
- 三層+存儲過程實現(xiàn)分頁示例代碼
- 相關(guān)鏈接:
- 教程說明:
.Net教程-基于C#的接口基礎(chǔ)教程之七
。