黑猴子的家:Scala 本章(类型参数)要点

(1)类、特质、方法和函数都可以有类型参数

(2)将类型参数放置在名称之后,以方括号括起来

(3)类型界定的语法为T<:UpperBound、T>:LowerBound、T:ContextBound

(4)我们可以使用类型约束,来约束一个方法,比如(implicit ev:T<:<UpperBound)

(5)用 + T (协变)来表示某个泛型类的子类型关系额参数T方向一致,或者用-T(逆变)来表示方向相反

(6)协变适应于表示输出的类型参数,比如不可变集合中的元素

(7)逆变适用于表示输入的类型参数,比如函数参数

转载于:https://www.jianshu.com/p/9600d0071d03

猜你喜欢

转载自blog.csdn.net/weixin_33859231/article/details/91182521