类getter和setter
如果字段定义是private[this], 字段是私有的,但不生成getter和setter方法。
class Counter {
private[this] var value = 0
}
如果字段定义是私有的(private),则getter和setter方法也是私有的。
class Counter {
private var value = 0
}
如果字段定义没有修饰符, 则字段是私有的,getter和setter方法是共有的。
class Counter {
var value = 0
}
如果字段是val, 则生成final字段,并且只有getter方法。
class Counter {
val value = 0
}
重写setter和getter方法。
class Counter {
var value: Int = 0
def age: Int = { value + 100 }
def age_=(value: Int) = {
this.value = value
}
}
object CTest {
def main(args: Array[String]): Unit = {
val c = new Counter()
c.age =(10)
println(c.age)
}
}