一个类实现的多个接口里面有相同函数,而多个接口里的相同签名函数确实需要不同的实现,此情况下可以用显示接口避免。
两点注意:需要加接口名限定前缀,不需要加public修饰符,因为显式接口成员只能通过接口来使用,不能通过对象引用使用,所以有时是public,有时是private,不需要加public修饰符。
interface IInterface { int Test(string name); } interface IInterface2 { int Test(string name); } class MyClass : IInterface, IInterface2 { int IInterface.Test(string name) { Console.WriteLine("int IInterface.Test(string name)"); return 1; } int IInterface2.Test(string name) { Console.WriteLine("int IInterface2.Test(string name)"); return 1; } }