scala学习之:Scala类型约束
来源:互联网 发布:虚拟社交网络的优点 编辑:程序博客网 时间:2024/06/04 20:07
Scala的类型约束实战代码及在Spark中的应用
}
rocky("SPark")
类型约束的语法: A =:= B 表示A与B同类型 , A <:< B 表示A为B的子类
示例代码:
def rocky[T](i:T)(implicit ev : T <:< java.io.Serializable ){
println("Life is Short , you need Spark")}
rocky("SPark")
//rocky(30)
Scala中Variance代码实战及其在Spark的应用(协变与逆变)
Variance: 形变。
A是B的子类,它可以发生形变。
如果List[A]是List[B]的子类。叫做协变; 如果List[B]是List[A]的子类。叫做逆变;
示例代码:
class Human
class Coder extends Human
class C [+T](val args : T) // + :协变
trait Friend[-T]{
def makeFriend(somebody : T )
}
object HelloVariance {
def makeFriendWithYou(c : Coder , f : Friend[Coder]){f.makeFriend(c)}
def main(args: Array[String]): Unit = {
val value : C[Human] = new C[Coder](new Coder)
}}
以上内容是从王家林老师DT大数据课程第48、49讲的学习笔记。
DT大数据微信公众账号:DT_Spark
王家林老师QQ:1740415547
王家林老师微信号:18610086859
百度云盘地址:http://pan.baidu.com/s/1i3gYqqh
优酷播放地址:http://v.youku.com/v_show/id_XMTI4MjEwNTU2OA==.html
51cto的播放地址:http://edu.51cto.com/lesson/id-67881.html
0 0
- scala学习之:Scala类型约束
- Scala 类型约束
- scala进阶7-类型约束
- scala学习之: scala的结构类型代码实战
- scala学习之----基础
- scala学习之函数
- scala学习之Array
- scala学习之apply
- scala学习之update
- scala学习之List
- Scala学习之路
- Scala学习笔记之Scala特性
- Scala学习笔记之Scala基础
- Scala学习笔记之Scala标准库
- scala学习之:scala中的单例
- Scala学习—类型参数
- Scala入门之类型参数
- scala学习之:Scala中类型变量Bounds及View Bounds
- 暑假第5周工作周报
- 打不开Eclipse,Eclipse闪退(已解决)
- dijkstra算法(Pascal描述)
- mysql覆盖索引
- php中的变量详解
- scala学习之:Scala类型约束
- 用ubuntu的话,可以把不需要的模块blacklist掉
- Queue和Stack头文件的使用
- 原串翻转(Java)
- ZOJ 3776 Pokemon Master
- Nginx开发从入门到精通二
- bash手册翻译#3.1 shell语法
- 8-21 UINavigationController
- ZOJ 3778 Talented Chef