1.封裝的作用 程式設計要追求”高內聚,低耦合“ 高內聚:類的內部數據操作細節自己完成,不允許外部干涉。 低耦合:僅暴露少量的方法給外部使用,儘量方便外部調用。 類似設計電視,冰箱也是,外部看起來很簡單,就幾個開關,方便使用。內部很複雜,不對外展示。 封裝的概念就產生於此,把對象的屬性和操作結合為一 ...
1.封裝的作用
程式設計要追求”高內聚,低耦合“
高內聚:類的內部數據操作細節自己完成,不允許外部干涉。
低耦合:僅暴露少量的方法給外部使用,儘量方便外部調用。
類似設計電視,冰箱也是,外部看起來很簡單,就幾個開關,方便使用。內部很複雜,不對外展示。
封裝的概念就產生於此,把對象的屬性和操作結合為一個獨立的整體,並且儘可能的隱藏對象的內部實現細節。
封裝的優點:
1.提高代碼的安全性和復用性
2.高內聚(封裝細節,便於修改內部代碼,提高可維護性)
3.低耦合(簡化外部調用,便於調用者使用,便於擴展和協作)
沒有封裝代碼會有問題
例:
2.封裝的實現
為了實現封裝,我們使用了訪問控制符
在java中有四個訪問控制符:private default protected public
其許可權圖為
修飾符 | 同一個類 | 同一個包 | 子類 | 所有類 |
private | √ | × | × | × |
default | √ | √ | × | × |
protected | √ | √ | √ | × |
public | √ | √ | √ | √ |
1.private:表示私有,只有自己的類能訪問
2.default:表示預設,沒有修飾符的時候預設為defalut,只有同一個包內能訪問
3.protected:表示保護,可以被同一個包的類及其子類訪問
4.public:表示公共,可以被該項目所有的包的所有類訪問
例:
3.封裝的使用細節
類的使用處理:
1.一般使用private
2.提供set/get方法來訪問相關屬性,這些方法通常是public,以提供對屬性賦值與讀取操作(註:boolean變數的get方法是is開頭的)
3.一些只用於本類對輔助性方法可以用private修飾
例:
封裝:
調用:
這就可以防止輸入年齡的錯誤等類似問題,封裝也就是之後在javaee中的javabean