快学Scala 第六课 (类getter和setter)

mac2022-06-30  69

类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) } }

 

转载于:https://www.cnblogs.com/AK47Sonic/p/7277304.html

最新回复(0)