如何调用这些接口方法呢?

How to call these interface methods?

只是想知道如何为我的学习目的调用它。我知道在不使用 IIm 或 IIn.Display 时通过对象创建调用它(即仅使用 public void Display();)但是,我不知道如何调用它。

public interface IIn
{
    void Display();
}
public interface IIM : IIn
{
    void Display();
}
public class temp : IIM
{
    void IIM.Display()
    {
        Console.WriteLine("Displaying 1");
    }

     void IIn.Display()
     {
         Console.WriteLine("Displaying 2 ");
     }

    static void Main()
    {
        temp t = new temp();

        Console.ReadLine();
    }

给出

var t = new temp();

您只需将 t 转换为接口之一...将其复制到接口类型的变量中就足够了:

IIM t1 = t;
IIn t2 = t;
t1.Display(); // Displaying 1
t2.Display(); // Displaying 2

或将其作为参数传递给方法:

static void MyShow(IIM t1, IIn t2)
{
    t1.Display(); // Displaying 1
    t2.Display(); // Displaying 2
}

MyShow(t, t);

或者你也可以直接投射使用方法:

((IIM)t).Display(); // Displaying 1
((IIn)t).Display(); // Displaying 2

请注意,如果您的 class

中有第三种方法
public void Display()
{
    Console.WriteLine("Displaying 3 ");
}

这就叫它

t.Display(); // Displaying 3