C#中泛型的使用

1.泛型类

泛型(Generic) 允许您延迟编写类或方法中的编程元素的数据类型的规范,直到实际在程序中使用它的时候。换句话说,泛型允许您编写一个可以与任何数据类型一起工作的类或方法。

您可以通过数据类型的替代参数编写类或方法的规范。当编译器遇到类的构造函数或方法的函数调用时,它会生成代码来处理指定的数据类型。下面这个简单的实例将有助于您理解这个概念:

 

2.泛型方法

我们可以通过类型参数声明泛型方法。下面的程序说明了这个概念:

 

3.泛型约束

在声明泛型方法/泛型类的时候,可以给泛型加上一定的约束来满足我们特定的一些条件。比如:

泛型限定条件(类型参数就是T):

 

T:结构(类型参数必须是值类型。可以指定除 Nullable 以外的任何值类型)

T:类 (类型参数必须是引用类型,包括任何类、接口、委托或数组类型)

T:new() (类型参数必须具有无参数的公共构造函数。当与其他约束一起使用时new() 约束必须最后指定)

T:<基类名> 类型参数必须是指定的基类或派生自指定的基类

T:<接口名称> 类型参数必须是指定的接口或实现指定的接口。可以指定多个接口约束。约束接口也可以是泛型的。

T:U

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值