C#知识梳理——泛型(1)

时间:2023-08-07 21:14:15       来源:哔哩哔哩

1.     什么是泛型 或者说微软定义好的泛型


【资料图】

2.     自定义泛型

3.     泛型方法

理解泛型方法,首先要明确的一点,泛型方法也是一种方法,它拥有方法的特性。但是从直观的感受来看,它与普通的方法又是不一样的,泛型方法的定义形式不同于普通的方法的定义,最显著的特点就是<>。

4.   泛型的优点和原理

泛型的优点其实很明确,那就是“通用”二字。一般能做到“通用“的东西都可以说相当灵活。

5.     泛型约束

泛型约束就是约束泛型传入参数的类型 常见的有几类,包括

//[1] where T:new()//约束--表示T类型只接受带一个无参数的构造函数 (人话就是可以用new T()--比如普通类就默认带一个无参数的构造 像接口就没有构造函数)--->//Show(IDoctor);-->❌

//[2] strcut: where T:strcut  -->只能传值类型   where T:int -->  值类型约束例子就是只能传int类型的过来

//[3] class 引用类型约束 where T:class  -->只能传引用类型

//[4] 自定义类型约束===>这个最简单,只要把自己写的类型放上去即可

//值类型:结构体、枚举、int、。。。  引用类型:类、接口、委托、object、字符串

//注意 where T:struct,class 这样的定义就冲突了,因为没有一个类型既使值类型又是引用类型

此篇内容如有纰漏,请留言。

关键词: