一、泛型是什么?
1、通过参数化类型来实现在同一份代码上操作多种数据类型。利用“参数化类型"将类型抽象化,从而实现灵活的复用。
换句话来说,泛型允许您编写一个可以与任何数据类型一起工作的类或方法。
2、在 C# 语言中泛型方法是指通过泛型来约束方法中的参数类型,也可以理解为对数据类型设置了参数。
如果没有泛型,每次方法中的参数类型都是固定的,不能随意更改。
在使用泛型后,方法中的数据类型则有指定的泛型来约束,即可以根据提供的泛型来传递不同类型的参数。
定义泛型方法需要在方法名和参数列表之间加上<>
,并在其中使用 T
来代表参数类型。
当然,也可以使用其他的标识符来代替参数类型, 但通常都使用 T
来表示。
二、实例
【实例】创建泛型方法,实现对两个数的求和运算。
根据题目要求,代码如下。
执行上面的代码,效果如下图所示。
从上面的执行效果可以看出,在调用 Add 方法时能指定不同的参数类型执行加法运算。
如果在调用 Add 方法时,没有按照 <T> 中规定的类型传递参数,则会出现编译错误,这样就可以尽量避免程序在运行时出现异常
三、泛型的特性
使用泛型是一种增强程序功能的技术,具体表现在以下几个方面:
四、在声明泛型方法/泛型类的时候,可以给泛型加上一定的约束来满足我们特定的一些条件。
比如:
using System; using System.Web.Caching; namespace Demo.CacheManager { public class CacheHelper<T> where T:new() { } }
泛型限定条件:
原文:https://www.cnblogs.com/AmbitionBoy/p/12013738.html