您的位置:首页 > 大数据

DT大数据梦工厂 温故而知新 之15讲

2015-08-03 05:54 253 查看
王家林亲授 大数据开发语言《Scala深入浅出实战经典》(1-71讲全部视频、代码、PPT)下载 ,总共有140讲Scala视频!

百度云:http://pan.baidu.com/s/1jGjFpWy

腾讯微云:http://url.cn/TnGbdC

360云盘:http://yunpan.cn/cQ4c2UALDjSKy 访问密码
45e2

DT大数据梦工厂 温故而知新 之15讲scala 中的特质的多继承

package TestPractice

/**

* @author Administrator

*/

object TraitMoreExtendDemo {

def main(args: Array[String]): Unit = {

//创建对象

val v1 = new ZZ

//使用对象

v1.t1

println(v1.name + "\t" + v1.age)

}

}

trait AA {

val name = "aa"

var age: Int

def t1: Unit = {

println("AA t1....")

}

}

trait BB {

val name = "bb"

var age: Int

def t1: Unit = {

println("BB t1....")

}

}

class ZZ extends Object with AA with BB {

//重写冲突成员常量

override val name = "zz"

//重写冲突成员变量,必须是抽象的成员变量才能重写,具体的成员变量不能重写

override var age: Int = 10

//重写冲突成员方法

override def t1: Unit = {

println("ZZ t1....")

}

}

总结 :

如果一个类混入的多个特质,切这些特质中有同名方法,造成冲突

那么解决这个方法冲突的办法是重写冲突的方法。(冲突变量也是如此)

抽象方法和抽象字段都必须重写,因此它们中有冲突的成员字段和成员方法

其解决办法也是重写
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: