學習C#接口重實現
派生類可以對基類中已經定義的成員方法進行重載。類似的概念引入到類對接口的實現中來,叫做接口的重實現(re-implementation)。繼承了C#接口實現的類可以對接口進行重實現。這個接口要求是在類定義的基類列表中出現過的。對接口的重實現也必須嚴格地遵守***實現接口的規則,派生的接口映射不會對為接口的重實現所建立的接口映射產生任何影響。
下面的代碼給出了C#接口重實現的例子:
實際上就是:Control把IControl.Paint映射到了Control.IControl.Paint上,但這并不影響在MyControl中的重實現。在MyControl中的重實現中,IControl.Paint被映射到MyControl.Paint 之上。
在C#接口重實現時,繼承而來的公有成員定義和繼承而來的顯式接口成員的定義參與到接口映射的過程。
這里,接口IMethods在Derived中的實現把接口方法映射到了Derived.F,
Base.IMethods.G, Derived.IMethods.H, 還有Base.I。前面我們說過,類在實現一個接口時,同時隱式地實現了該接口的所有父接口。同樣,類在重實現一個C#接口時同時,隱式地重實現了該接口的所有父接口。
這里,對IDerived的重實現也同樣實現了對IBase的重實現,把IBase.F 映射到了D.F。對于C#接口重實現的實現就先介紹到這里。
【編輯推薦】


















