//定义一个特质
//特质可以有抽象属性,具体属性,抽象方法,具体方法
trait Beauty{
//抽象属性(没有=)
val hair:String
//具体属性
var age =18
val height =180 // val 不可以修改,var可以修改
//抽象方法(没有=)
def smile
// 具体方法
def say(): Unit={}
}
class Boy extends Beauty{
//抽象属性,要具体实现
val hair = "短发"
//具体属性可以重写(可选)
// var 修饰的,可以直接赋值
// val 修饰的,可以用override重写
override val height = 178
age = 20
//抽象方法,要具体实现
def smile(): Unit={
println(s"嘴角微微扬起")
}
//具体属性可以重写(可选)
override def say():Unit={
println(s"${age}岁,${height}大高个,${hair}")
}
}
object Test50_1 {
def main(args: Array[String]): Unit = {
val b1 = new Boy()
// println(b1.age,b1.height)
b1.say()
}
}
————————————————
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
原文链接:https://blog.youkuaiyun.com/lhhongbi/article/details/143163424