C#-通用接口

C#-通用接口,c#,C#,通用接口在哪里非常有用?(我是初学者,所以简单的示例肯定会有帮助)。您可以先看一下。当您想要参数化接口中某个成员的类型时,通用接口非常有用。考虑 iQueabd和 iQueaby接口。第一个迭代对象,而第二个迭代为T提供的类型参数的实例 因为接口可以是泛型的,所以它允许您利用它们的灵活性,同时仍然以与具体类型相同的方式利用泛型 它在需要接口时很有用,但也需要抽象数据类型。简单例子 public interface IMyShape<T> { T X { get; } T

通用接口在哪里非常有用?(我是初学者,所以简单的示例肯定会有帮助)。

您可以先看一下。

当您想要参数化接口中某个成员的类型时,通用接口非常有用。考虑<代码> iQueabd和 iQueaby接口。第一个迭代
对象
,而第二个迭代为
T
提供的类型参数的实例


因为接口可以是泛型的,所以它允许您利用它们的灵活性,同时仍然以与具体类型相同的方式利用泛型

它在需要接口时很有用,但也需要抽象数据类型。简单例子

public interface IMyShape<T>
{
   T X { get; }
   T Y { get; }
}

public class IntSquare : IMyShape<int>
{
   int X { get { return 100; } }
   int Y { get { return 100; } }
}

public class IntTriangle : IMyShape<int>
{
   int X { get { return 200; } }
   int Y { get { return 200; } }
}

public class FloatSquare : IMyShape<float>
{
   float X { get { return 100.05; } }
   float Y { get { return 100.05; } }
}
公共接口IMyShape
{
tx{get;}
T{get;}
}
公共类IntSquare:IMyShape
{
int X{get{return 100;}}
int Y{get{return 100;}}
}
公共类:IMyShape
{
int X{get{return 200;}}
int Y{get{return 200;}}
}
公共级浮动广场:IMyShape
{
浮点X{get{return 100.05;}}
浮点Y{get{return 100.05;}}
}