特质

26 阅读1分钟

特质:trait

实现多继承

trait Tall {
    var height: Int = 180
  }

  trait Eye {
    var beautifulEye: String = "大眼睛"
  }

  // class 就有两个父类
  class Girl extends Tall with Eye {}

  def main(args: Array[String]): Unit = {
    val girl1 = new Girl()
    girl1.beautifulEye
    girl1.height
  }
}
 trait Tall {
    var height: Int = 180
    var name:String
    def say():Unit={println((s"${name}"))}
    def cry():Unit
  }

  trait Eye {
    var beautifulEye: String = "大眼睛"
    var age:Int
  }

  // class 就有两个父类
  class Girl extends Tall with Eye{

    override var name: String = "女士"

    override def cry(): Unit = {
      println("cry.....")
    }

    override var age: Int = 18
  }

  def main(args: Array[String]): Unit = {
    val girl1 = new Girl()
    girl1.say()
    println(girl1.beautifulEye)
   println( girl1.height)
  }
}