第十三條:使類和成員的可訪問性最小化
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類型的.