显式接口实现

一个类实现的多个接口里面有相同函数,而多个接口里的相同签名函数确实需要不同的实现,此情况下可以用显示接口避免。

两点注意:需要加接口名限定前缀,不需要加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;
        }
    }
原文地址:https://www.cnblogs.com/dirichlet/p/3327143.html