特质 trait
1.定义:trait Beautiful{
属性:方法
}
trait :是一个关键字。 Beautiful:是一个合法的标记
2.作用:封装成员和方法,供其他类来实现。它可以实现多继承!
(1)具体属性,抽象属性
(2)具体属性,抽象属性
(3)trait中可以有具体,也可以有抽象
(4)它的子类必须实现抽象的(属性,方法)
(5)具体与抽象的区别:
有具体值的就是具体属性,看看有没有“ = ”
3.代码展示
trait BeautifulEye {
val eye:String = "眼睛漂亮"// 具体属性
val name:String// 抽象属性
}
trait Tall {
val height:String = "大高个"
def run():Unit = {
println("run....")
}
def jump():Unit
}
// 继承 with (语法)
class Child extends BeautifulEye with Tall {
val name:String = "泡芙" // 实现抽象属性
def jump():Unit = { // 实现抽闲方法
println(s"${name}, jump...")
}
}
def main(args: Array[String]): Unit = {
val child = new Child()
println(child.eye)
println(child.height)
child.run()
child.jump()
}
4.结果展示: