当前位置: 首页 > news >正文

飞言情做最好的小说网站电商网站首页

飞言情做最好的小说网站,电商网站首页,家庭农场做网站,不备案 国内网站吗C#泛型——约束|协变|逆变 1、泛型使用 在生命时可以使用<>&#xff0c;可以写一个标识符代替一些数据类型&#xff0c;在声明时给出明确定义。 非常强大&#xff0c;因此需要约束。 2、泛型约束 where T: struct//值类型约束&#xff0c;要求泛型必须为基本数据类型…

C#泛型——约束|协变|逆变

1、泛型使用

在生命时可以使用<>,可以写一个标识符代替一些数据类型,在声明时给出明确定义。
非常强大,因此需要约束。

2、泛型约束

where T: struct//值类型约束,要求泛型必须为基本数据类型
where T: class //引用类型约束,要求泛型必须为类类型
where T: new()//默认构造方法约束,要求泛型必须有默认构造方法(抽象类abstract、接口interface、密封类sealed等都不可以)
多重约束之间用逗号隔开

3、泛型&协变与逆变

(1)协变(子转父)与逆变(父转子)

泛型是一种不指定的数据类型,不同的泛型之间没有继承关系。
但通过泛型定义的类在使用时需要指定泛型的具体类型,这些具体类型之间有时会具备父子关系。
通常情况下,同一个使用泛型的类在不同具体的实例化的同时,对象引用之间不允许相互赋值。
也就是说,A和A之间没有父子关系,默认为不变关系(没有关系)。
这个时候逆变、协变、和不变关系只能自己声明。

(2)使用泛型时协变与逆变的声明out/in

delegate T d1<out T> ();//协变声明
delegate void d2<in T> (T t);//逆变声明

声明协变泛型后, 使用子类的委托对象 可以向 使用父类泛型的委托引用 赋值:

d1<Dog> d11 = MakeAnimal;
d1<Animal> d12 = d11;

声明逆变泛型后, 使用父类的委托对象 可以向 使用子类泛型的委托引用 赋值:

d2<Animal> d21 = MakeAnimal2;
d2<Dog> d22 = d21;

协变泛型只能做返回值,逆变泛型只能做参数。

(3)适用范围

泛型接口和泛型委托
个人感觉是因为泛型接口和泛型委托只能出现在赋值表达式的左侧,作为被赋值的一方,
泛型类有可能不需要声明引用,泛型方法不可能作为对象引用出现在赋值表达式的左侧。

http://www.yayakq.cn/news/245891/

相关文章:

  • 宁波企业建网站报价招聘网哪个平台是免费的
  • 如何建立一个网站网络推广的途径有哪些
  • 进口跨境电商网站制作p2p网站建设方案书
  • iis搭建网站404沧州网络公司有哪些
  • 松原市住房和城乡建设局网站网站建立教学
  • 垂直电商网站建设男科免费咨询
  • 主播网站怎么建设宁波建设公司网站
  • 免费软件制作网站网站轮播效果怎么做的
  • 网站建设公司ejiew游戏制作器
  • 网站建设开公司现在好做吗深圳网站建设公司招聘电话销售
  • 郑州哪家建设网站公司网站条形码如何做
  • 寮步建设网站网页设制作与网站建设宝典 pdf
  • 做电商不不得不知道的网站辽宁建设工程信息网招标文件怎么打开
  • 企业网站建设公司网络服务做一个网站的价钱
  • 如何做h5商城网站好习惯网站
  • 衡水做网站优化如何网站做镜像
  • 网站关键词在线优化网站开发 图标
  • 湖北省交通建设监理协会网站苏州建设工程有限公司
  • 卖书网站开发的背景上海闸北区网站建设
  • 临沂的网站建设网站开发的研究背景
  • 动态页网站汕头网站建设sagevis
  • 国内做led灯网站有wordpress首页幻灯片尺寸
  • 南宁建站服务公司微信开发网站建设程序
  • 做网站用什么语言快给客户做网站需要付法律责任吗
  • 联通营业厅做网站维护网推是什么意思
  • 手表网站建设网站架构师培训
  • 网站推广短信免费咨询问题的网站
  • 网站设计策划书怎么写东莞网络推广招聘
  • 手机商城网站源码注册公司一年要交多少税
  • 上海礼品定制网站专门做二手书网站或app