scala trait

59 阅读1分钟
/**
 * 特质:trait
 * 作用:类似于抽象类 定义抽象属性 方法
 *       让其他的子类去实现
 * */
 object Main{
     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)
     }
 }
object Main{
     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)
        }
    }