trait基本使用

52 阅读1分钟

trait定义和作用 Scala没有Java中接口的概念,所以Scala的trait就类比Java中的接口。Scala的特质定义如下:

package t2

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

 */

object test19 {
  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()
    class1.sayA()
    println(class1.name)
    println(class1.age)
  }
}

image.png