par*_*tic 11
首先,你应该知道当你写:
class Person( val name: String, val age: Int ) {
...
}
Run Code Online (Sandbox Code Playgroud)
name并且age不是实例变量,而是访问器方法(getter),默认情况下是公共的.
如果你改写:
class Person( name: String, age: Int ) {
...
}
Run Code Online (Sandbox Code Playgroud)
name并且age只是实例变量,它们是您可以期望的私有变量.
Scala的哲学是更喜欢不可变的实例变量,然后使用公共访问器方法不再是一个问题.
私人鼓励巨石.一旦将不相关的功能放入类中更容易,因为它需要读取一些恰好是私有的变量,类就会开始增长.
这只是一个错误的默认值,也是Java中超过1000行的类的一个重要原因.
Scala默认为不可变,这消除了人们经常使用私有来限制(但不删除,因为类自己的方法仍然可以改变变量)的大量错误类.
| 归档时间: |
|
| 查看次数: |
298 次 |
| 最近记录: |