从具有相同方法名称的多个接口继承
如果我们有一个从多个接口继承的类,并且这些接口具有名称相同的方法,那么如何在我的类中实现这些方法?我们如何指定实现哪个接口的方法?
回答:
通过显式实现接口,如下所示:
public interface ITest { void Test();
}
public interface ITest2 {
void Test();
}
public class Dual : ITest, ITest2
{
void ITest.Test() {
Console.WriteLine("ITest.Test");
}
void ITest2.Test() {
Console.WriteLine("ITest2.Test");
}
}
使用显式接口实现时,这些函数在类上不是公共的。因此,为了访问这些功能,必须首先将对象转换为接口类型,或将其分配给声明为接口类型的变量。
var dual = new Dual();// Call the ITest.Test() function by first assigning to an explicitly typed variable
ITest test = dual;
test.Test();
// Call the ITest2.Test() function by using a type cast.
((ITest2)dual).Test();
以上是 从具有相同方法名称的多个接口继承 的全部内容, 来源链接: utcz.com/qa/399460.html