scala private[x]困惑

NO IMAGE
1 Star2 Stars3 Stars4 Stars5 Stars 給文章打分!
Loading...

private[包名],private[this] 可以放在欄位,方法和類上,用來限制訪問許可權;

1private[包名]包名可以是父包名或當前包名,如果是父包名,則父包和子包都可以訪問

2private[this]修飾的方法或欄位只能在本類訪問,如果是欄位編譯成java的時候就沒有get或set方法。

3如果有兩個名稱相同的子包,比如

package x.y.z.x.v

有兩個x,當private[x]的是否離當前包最近的一個包生效

4我的困惑是我檢視class檔案反編譯以後的java類,在class上加private[]的資訊去哪了,在反編譯的檔案中找不到,並且刪除scala檔案,把生成的class檔案放到工程中,他的效果依然存在。

相關文章

程式語言 最新文章