一、private[this] 对象私有属性
函数
在scala中,若是使用private[this],表示该属性只能属于当前对象私有,不能被当前对象的类方法使用this
class Person { private[this] var name ="蓝狐" def isName(other:Person)=name<other.name }
二、class默认构造器scala
class Person { private[this] var name ="蓝狐" def this(name:String){ this() this.name=name } def sayHello(){ println(this.name) } }
scala中class类默认会有构造器,若是想重载构造器(创建附属构造器)须要调用默认构造code
若是不想使用默认构造器,只想使用咱们本身定义的附属构造器能够用private关键字在类名称后面声明对象
class Person private { private[this] var name ="蓝狐" def this(name:String){ this() this.name=name } def sayHello(){ println(this.name) } }
这就涉及到了scala中的类权限问题,private [类名]的意思是这个类也有权限访问该函数,private【this】表示只有当前实例才有权限访问,记住当前实例,即便是同一个类下的不一样对象也不能够class
五、在scala中函数是一等公民权限