第十三條:使類和成員的可訪問性最小化
1. 為什么要使類和成員的可訪問性最小化?
可以有效的解除系統(tǒng)中各個模塊的耦合度、實現(xiàn)每個模塊的獨立開發(fā)、使得系統(tǒng)更加的可維護(hù),更加的健壯。
2. 如何最小化類和接口的可訪問性?
(1)能將類和接口做成包級私有就一定要做成包級私有的。
(2)如果一個類或者接口,只被另外的一個類應(yīng)用,那么最好將這個類或者接口做成其內(nèi)部的私有類或者接口。
3. 如何最小化一個了類中的成員的可訪問性?
(1)首先設(shè)計出該類需要暴露出來的api,然后將剩下的成員的設(shè)計成private類型。然后再其他類需要訪問某些private類型的成員時,在刪掉private,使其變成包級私有。如果你發(fā)現(xiàn)你需要經(jīng)常這樣做,那么就請你重新設(shè)計一下這個類的api。
(2)對于protected類型的成員,作用域是整個系統(tǒng),所以,能用包訪問類型的成員的話就盡量不要使用保護(hù)行的成員。
(3)不能為了測試而將包中的類或者成員變?yōu)閜ublic類型的,最多只能設(shè)置成包級私有類型。
(4)實例域絕對不能是public類型的.