1. 程式人生 > >Scala的類的私有屬性和物件的私有欄位

Scala的類的私有屬性和物件的私有欄位

在Scala中,一個類定義了一個屬性,如果不是private的

var age=0

那麼它也會預設當成private級別的屬性,同時會預設生成setter和getter方法,當呼叫的時候,會通過age的函式來取得age的值,就是getter方法

而預設生成的setter方法是 age_是age加下劃線方式生成setter方法的

所以可以通過方法訪問類的所有的屬性,同java中的javabean一樣,

但是這也有個問題,那就是一個類裡面有屬性不讓當前物件之外的物件所訪問,那麼我該怎麼辦呢?

scala為我們提出了private[this]的方式,限定只能是類自己的方法訪問自己的物件,屬於當前物件所私有

當前物件之外的物件訪問的時候就會報錯