一、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中函數是一等公民權限