Scala 028 private[this]访问权限
如果某个成员的权限设置为private[this],表示只能在当前类中访问。
伴生对象也不可以访问
例如:
- 定义一个Person类,包含一个name字段
- 定义Person类的伴生对象,定义printPerson方法
- 测试伴生对象是否能访问private[this]权限的成员
package demo02
object Scala13 {
class Person(private[this] var name: String)
object Person {
def printPerson(person: Person): Unit = {
println(person.name)
}
}
def main(args: Array[String]): Unit = {
val person = new Person("张三")
Person.printPerson(person)
}
}
上述代码,会编译报错。但移除掉[this]就可以运行了。