我目前正在爲我的MS 70-515考試而學習。在其中一種實踐中,作者實現了一個既是隱式又是顯式的接口。顯式實現只是調用隱式實現。顯式的實現只是沒有解釋就列出來。實現接口的隱式和顯式都有意義嗎?
是否有意義同時具有接口的隱式和顯式實現?我認爲明確的實現是多餘的(在這種情況下)。
public class PassTextBox : TextBox, IScriptControl
{
public virtual IEnumerable<ScriptDescriptor> GetScriptDescriptors()
{
var descriptor = new ScriptControlDescriptor(
"AjaxEnabled.PassTextBox", ClientID);
// ...
return new ScriptDescriptor[] {descriptor};
}
IEnumerable<ScriptDescriptor> IScriptControl.GetScriptDescriptors()
{
return GetScriptDescriptors();
}
}
順便說一句,代碼似乎運行得很好,沒有顯式實現,因爲隱式實現是公共的。
它涉及到MCTS Self-Paced Training Kit (Exam 70-515): Web Applications Development with Microsoft .NET Framework 4第9章第2課第3章是準確的。
[Implicit and Explicit implementation of interface](http://stackoverflow.com/questions/2756520/implicit-and-explicit-implementation-of-interface) – 2012-04-15 19:50:56
這些考試總是有一英里長的錯誤。您可以提交自己的:http://oreilly.com/catalog/errata.csp?isbn=9780735627406 – 2012-04-15 20:03:23