Scala中的特质

21 阅读1分钟

特质 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.结果展示:

Snipaste_2025-11-17_15-18-26.png