.NET 中的泛型接口

本文概述了 .NET 的泛型接口,这些接口在泛型类型系列中提供了通用的功能。

泛型接口提供与非泛型接口对应的类型安全接口,用于实现排序比较、相等比较以及泛型集合类型所共享的功能。 .NET 7 为类似数字的类型引入了泛型接口,例如 System.Numerics.INumber<TSelf>。 通过这些接口可定义提供数学功能的泛型方法,其中泛型类型参数被约束为实现泛型数字接口的类型。

注意

多个泛型接口的类型参数标记为协变或逆变,这为分配和使用实现这些接口的类型提供了更好的灵活性。 有关详细信息,请参阅协变和逆变

相等比较和排序比较

集合功能

数学功能

.NET 7 在 System.Numerics 命名空间中引入了泛型接口,用于描述类似数字的类型及其可用的功能。 .NET 基类库提供的 20 种数字类型(例如 Int32Double)已更新以实现这些接口。 这些接口中最突出的是 INumber<TSelf>,它大致对应于一个“真实”数字。

有关这些接口的详细信息,请参阅泛型数学

请参阅