scalagetter和setter
Posted zzhangyuhang
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了scalagetter和setter相关的知识,希望对你有一定的参考价值。
我们在用Java的时候经常把一些字段定义为private类型来完成封装,这样外界就无法访问。
如果外界访问或者修改该字段的时候,只能通过该字段提供的getter和setter方法来实现。
在Scala中是没有getter和setter一说的。
用了value 和 value_= 来分别代替了getter和setter。
下面我们看个例子
class Counter{ private var privateValue = 0;//私有变量,外界无法直接访问 def value = privateValue;//定义一个方法,方法名为我们想要的字段的名称,代替getter def value_= ( newValue : Int ){//主语 value_= 是方法名字 value = newValue; } } object MyCounter{ def main(args :Array[String]){ val myCounter = new Counter; println(myCounter.value);//调用value方法访问value,相当于getter myCounter.value = 3 ;//为value设置新值,相当于setter } }
以上是关于scalagetter和setter的主要内容,如果未能解决你的问题,请参考以下文章
kotlin getter 和 setter 期望成员声明错误?