[英]Implicit end explicit implementation of same method from interface?
在什么情況下從接口隱式結束顯式實現同一方法有意義?
我知道區別,但是我不知道為什么有時兩者都使用?
interface I1
{
void A();
}
class B : I1
{
public void A()
{
Console.WriteLine("Implicit ");
}
void void I1.A()
{
Console.WriteLine("Explicit");
}
}
例如,您可以執行此操作以使該方法protected
並可以通過該接口訪問。
這樣,調用者只能通過接口聲明或從類派生而訪問它。 不能從類本身或派生類訪問顯式接口成員。
class B : I1
{
protected void A()
{
Console.WriteLine("Implicit ");
}
void void I1.A()
{
Console.WriteLine("Explicit");
}
}
I1 i = new B();
i.A(); // works
B b = new B();
b.A(); // does not work
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.