scala中trait的基本使用

28 阅读1分钟

trait

特质

作用

  1. 类似于抽象类,定义抽象属性,方法
  2. 让其他的子类去实现

一个特质的案例

/*
* 特质 : trait
* 作用 : 类似于抽象类,定义抽象属性,方法
*       让其他的子类去实现
* 特点 : 可以实现多继承
*/

object class23 {

  trait A {
    var name:String
  }
  class Class1 extends A{
    var name:String="Class1"
  }

  def main(args: Array[String]): Unit = {
    val class1=new Class1()
    println(class1.name)
  }
}

多个特质的案例

/*
* 特质 : trait
* 作用 : 类似于抽象类,定义抽象属性,方法
*       让其他的子类去实现
* 特点 : 可以实现多继承
*/

object class24 {

  trait A {
    var name:String
    def sayA():Unit={
      println("sayA")
    }
  }
  trait B {
    var age:Int
  }
  class Class1 extends A with B {
    var name:String="Class1"
    var age:Int=4
  }

  def main(args: Array[String]): Unit = {
    val class1=new Class1()
    println(class1.name)
    println(class1.age)
  }
}