两张图说明:
这个是不带[this]:
class OOPInScala {}
class Person{
var name:String =_
val age = 27
private val gender = "male"
def testPrivate(other : Person){println(other.gender)}
}
object OOPInScala{
def main (args: Array[String]) {
val p1 = new Person
val p2 = new Person
p1.name = "rock"
p2.name = "book"
p1.testPrivate(p2)
//println(p1.name + ":" + p1.gender)
}
}
/*
* 返回: male
*/
这个是[this] :
class OOPInScala {}
class Person{
var name:String =_
val age = 27
private[this] val gender = "male"
def testPrivate(other : Person){println(other.gender)}
}
object OOPInScala{
def main (args: Array[String]) {
val p1 = new Person
val p2 = new Person
p1.name = "rock"
p2.name = "book"
p1.testPrivate(p2)
//println(p1.name + ":" + p1.gender)
}
}
/*
* 报错: value gender is not a member of Person
*/