package com.test.scala
/**
* Created by xuwei on 16/8/6.
*/objectTestObjectOverrideextendsApp {val stu = new Student
println("before:" + stu.name)
stu.name = "Helo"
println("after:" + stu.name)
println(stu.id)
println(stu.salary)
}
abstractclassPersonInTestObjectOverride {def id(): Int
var name: String
// var 必须时抽象的, 不然无法继承// var name: String = "error"val salary: Long
//已经存在, 无法定义// def name_=(name: String): Unit = {// println("here is in parent")// this.name = name// }
}
classStudentextendsPersonInTestObjectOverride {// override val id = 1overridedef id: Int = 1overridevar name: String = "LiLei"overrideval salary: Long = 0// 无法复写// override def name_=(name: String): Unit = {// println("here is in child")// this.name = "new"// }
}
def只能重写另一个defval只能够重写另外一个val或者不带参数的defvar只能重写另一个抽象的varpackage com.test.scala/** * Created by xuwei on 16/8/6. */object TestObjectOverride extends App { val stu = new Student println("before: