假設現在有好四個人A,B,C,D,他們都要寫毛筆字,有的寫行書,有的寫楷書,有的寫詩,有的寫詞,雖然寫的内容不同,寫法也不一樣,但是都要在寫毛筆字前都要蘸水。那麼我們可以建立四個類Class WriterA,Class WriterB,Class WriterC,Class WriterD,讓他們都繼承同一個接口IDipWater

IDipWater
interface IDipWater
{
void DipWater();
}
WriterA的設計

WriterA
class WriterA
public WriterA()
{ }
void DipWater()
{
Dip();
}
采用接口的好處:
1,将蘸水的方法DipWater抽取出來寫到接口的好處是所有繼承接口IDipWater的書法家們都會去實作接口中的蘸水方法,而不會忘記蘸水。
2,如果除了蘸水之外書法家們寫字前還有其他必做事情要做,仍然可以定義成接口,讓書法家們繼承接口。
3,對象(類)需要多态,并且往往需要多重繼承以便于放入不同父類的多态流程中。但是c#不支援多重繼承,接口是個好幫手。
MSDN對接口的闡述為:
接口是使用 interface 關鍵字定義的。例:

IComparable
interface IComparable
int CompareTo(object obj);
MSDN對接口的概述:
接口類似于抽象基類:繼承接口的任何非抽象類型都必須實作接口的所有成員。
不能直接執行個體化接口。
接口可以包含事件、索引器、方法和屬性。
接口不包含方法的實作。
類和結構可從多個接口繼承。
接口自身可從多個接口繼承。
本文轉自wengyuli 51CTO部落格,原文連結:http://blog.51cto.com/wengyuli/588641,如需轉載請自行聯系原作者