Scala-特质(Trait)

Scala语言中,采用特质trait(特征)来代替接口的概念,也就是说,多个类具有相同的特质(特征)时,就可以将这个特质(特征)独立出来,采用关键字trait声明。

一个类继承他的父类,还有其他特性,trait类似于Java里面interface的使用,也有区别

trait是interface和抽象类的结合,可以替代Java里面的接口,实现对单继承机制的一种补充

Scala中的trait中可以有抽象属性和方法也可以有具体的属性和方法,一个类可以混入(nixin)多个特质,这种感觉类似于Java中的抽象类。

语法trait 特质名{

                trait主体}

特质基本语法

一个类具体某种特质(特征),就意味着这个类满足了这个特质(特征)的所有要素,所有在使用时,也采用了extends关键字,如果有多个特质或存在父类,那么需要采用with关键字连接。

基本语法

没有父类 class 类名 extends 特质1 with 特质2 with 特质3...

有父类     class 类名 extends  父类 with 特质1 with 特质2 with 特质3

说明

(1)类 与特质的关系是继承关系

(2)当一个类去继承特质时,第一个连接词是extends,后面是with.

(3)如果一个类在同时继承特质和父类时,应当把父类写在extends后

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值