栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

编程语言中的协方差和协方差

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

编程语言中的协方差和协方差

协方差 非常简单,最好从某些收集类的角度来考虑

List
。我们可以 参数化
List
一些类型参数类
T
。也就是说,我们的列表包含
T
some 类型的元素
T
。如果,列表将是协变的

S是Tiff列表的子类型List [S]是List [T]的子类型

(在这里,我使用数学定义 iff 表示 当且仅当 。)

也就是说,a

List[Apple]
是一个
List[Fruit]
。如果有一些例程接受a
List[Fruit]
作为参数,而我有一个
List[Apple]
,则可以将其作为有效参数传入。

def something(l: List[Fruit]) {    l.add(new Pear())}

如果我们的集合类

List
是可变的,那么协方差就没有意义,因为我们可能会假设我们的例程可以像上面那样添加其他水果(不是苹果)。因此,我们只希望 不变的
集合类是协变的!



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/469599.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号