天天看點

抽象 與 封裝 差別

抽象

處理大而複雜的問題的重要手段是抽象,強調事物本質的東西。 對程式抽象而言,一個語言結構的抽象強調的是該結構外部可觀察的行為,與該結構的内部實作無關。抽象包括過程抽象和資料抽象。

封裝

封裝是把一個語言結構的具體實作細節作為一個黑匣子對該結構的使用者隐藏起來的一種機制,進而符合資訊隐藏原則。封裝包括過程封裝和資料封裝。

差別

封裝考慮内部實作,抽象考慮的是外部行為

封裝是屏蔽細節,抽象是提取共性

圖例

抽象 與 封裝 差別