第54讲:Scala中复合类型实战详解学习笔记

54讲:Scala中复合类型实战详解学习笔记

本讲讲scala中的类型系统中的复合类型

复合类型很常用

 

例:A extends B with C with D

解读:A extends B with C with D

A必须同时既是B又是C又是D的类型。

java语法在这点与scala不同

 

scala符合实际,应对了实际应用场景

 

trait Compound_Type1; 

trait Compound_Type2;

class Compound_type extends Compound_Type1 Compound_Type2

object Compound_Type {

  def compound_Type(x: Compound_Type1 with Compound_Type2) = {println("Compound Type in global method")}

  def main(args: Array[String]) {

    compound_Type(new Compound_Type1 with Compound_Type2)

    //new实例的时候也必须同时Compound_Type1 with Compound_Type2

    object compound_Type_object extends Compound_Type1 with Compound_Type2

    //trait混入object

    compound_Type(compound_Type_object)

 

    type compound_Type_Alias = Compound_Type1 with Compound_Type2

    //type别名,A extends B with C with D,太长了,可以用别名

    def compound_Type_Local(x:compound_Type_Alias) = println("Compound Type in local method")

    val compound_Type_Class = new Compound_Type

    compound_Type_Local(compound_Type_Class)

 

    type Scala = Compound_Type1 with Compound_Type2 {def init():Unit}

    //这就是上讲的结构类型,Scala既是Compound_Type1又是 Compound_Type2,同时必须实现init方法

  }

}

 

以上内容是从王家林老师DT大数据课程第54讲的学习笔记。
DT大数据微信公众账号:DT_Spark  

王家林老师QQ:1740415547 

王家林老师微信号:18610086859
百度网盘共享的DT大数据梦工厂王家林老师第1-91讲的视频内容:http://pan.baidu.com/share/home?uk=4013289088#category/type=0&qq-pf-to=pcqq.group

54讲酷6视频:http://v.ku6.com/show/hxp8kGRupuaoEgH3cMAzog...html?from=my

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值