斯卡拉 |控制构造函数字段的可见性
Scala 语言中Constructor Fields的可见性是通过声明的方式来维护和控制的。这些可以用以下形式声明:
- 声明为val
- 声明为var
- 不带var和val声明
- 将私有添加到字段。
现在,我们将通过一些示例的更多细节和帮助来了解上述所有方法:
当字段声明为var
如果该字段被声明为 var,那么 Scala 语言会自动为该特定字段生成Getter和Setter模式。这意味着该字段的值始终可以更改。
示例 1:
当字段声明为val
如果该字段被声明为 val,则在开始时分配的字段的值不能更改并永久保持设置。在这种情况下,Scala 只允许使用 getter 方法。
示例 2:
当字段声明时没有val和var
如果该字段声明时没有 var 和 val,则该字段的可见性非常有限,并且 Scala 不允许 setter 和 getter 方法。字段的可见性受到限制。
示例 3:
添加关键字私有
除了var和val模式,我们还可以提及关键字“private”。这使得字段可访问性与我们在 C++ 中所做的方式相同。这将停止 getter 和 setter 方法,并且通常使用类的成员函数访问该字段。
示例 4:
因此,上面讨论的情况是 Scala 构造函数类中可能存在的不同类型的可见性模式。