private 关键字,是用来限定后边这个变量在哪些包里面有访问权限,简单来说,就是作用域,private私有的,在Java中是不是只能在当前类能够访问,在Scala当中,还允许使用private私有字段,限定在哪些包里面可以访问,简单说,Scala就是更加灵活了,我们知道这个形式,就可以了,会在后边包和引用知识点中,重点进行详细的讲解
变量:workDetails在封闭包professional中的任何类中可访问。
封闭包:friends的任何类都可以被society包中任何类访问。
变量:secrets只能在实例方法的隐式对象(this)中访问。
package unit7
package society {
package professional {
class Executive {
private[professional] var workDetails = null
private[society] var friends = null
private[this] var secrets = null
def help(another: Executive) {
println(another.workDetails)
//println(another.secrets) 报错:访问不到
}
}
}
}
转载于:https://www.jianshu.com/p/3af3ae9c85b1