C# - 泛型接口

3

泛型接口在哪些地方非常有用?(我是初学者,所以简单的例子一定很有帮助)。

3个回答

4

当您需要一个接口,但也需要抽象数据类型时,它非常有用。以下是一个简单的例子:

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; } }
}

3

2

当您想要将接口中的成员类型参数化时,通用接口非常有用。请考虑 IEnumerableIEnumerable<T> 接口。前者迭代 Objects,而后者迭代提供给 T 的类型参数的实例。

由于接口可以是泛型的,因此它允许您利用其灵活性,同时仍以与实际类型相同的方式利用泛型。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接