pat*_*rit 4 scala access-modifiers
有什么区别
class Test {
private[this] val foo = 0
}
Run Code Online (Sandbox Code Playgroud)
VS
class Test {
private val foo = 0
}
Run Code Online (Sandbox Code Playgroud)
什么都可以进去[]?另外,当我想查看其中的规格时,我应该搜索什么?我尝试使用Google搜索"scala访问修饰符参数/参数化scala访问修饰符"的各种组合,并没有出现任何问题.
当我想查看这个规格时,我应该搜索什么?
在Scala语言规范中,它被定义为"访问修饰符"和"访问限定符"(参见§5.2中的BNF).
有什么区别
...
什么都可以进入[]?
你可以把类名,包名或this那里.以下是语言规范的相关引用,解释了这一点(更多细节请参见§5.2):
修饰符可以使用标识符C(例如private [C])进行限定,该标识符C必须表示包含该定义的类或包.标有此类修饰符的成员只能分别从C语言包中的代码访问,或者只能从C类及其伴随模块(第5.4节)中的代码访问.
另一种形式的资格是私人[this].标记有此修饰符的成员M称为对象保护; 它只能从定义它的对象中访问.也就是说,选择pM仅在前缀为this或O.this时才合法,对于包含引用的某个类O. 此外,对不合格私人的限制适用.
| 归档时间: |
|
| 查看次数: |
789 次 |
| 最近记录: |