物件導向的基本思想是:從現實世界中客觀存在的事物出發來構造軟體系統,並在系統的構造中盡可能地運用人類的自然思維方式。
物件導向更加強調運用人類在日常生活的邏輯思維中經常採用的思想方法與原則,如抽象、分類,繼承、聚合、多型等。
oop 的一條基本原則是:電腦程式是由單個能夠起到子程式作用的單元或物件組合而成。
如下圖,將實體的屬性和行為抽象為物件的成員變數和成員方法:
其中,實體的屬性是私有的,模擬到物件的成員變數,也是私有的;實體的行為是公有的,模擬到物件的成員方法,也是gongyou
1、單一職責原則
單一職責有2個含義,乙個是避免相同的職責分散到不同的類中,另乙個是避免乙個類承擔太多職責。減少類的耦合,提高類的復用性。
2、介面隔離原則
表明客戶端不應該被強迫實現一些他們不會使用的介面,應該把胖介面中額方法分組,然後用多個介面代替它,每個介面服務於乙個子模組。簡單說,就是使用多個專門的介面比使用單個介面好很多。
該原則觀點如下:
1)乙個類對另外乙個類的依賴性應當是建立在最小的介面上
2)客戶端程式不應該依賴它不需要的介面方法。
3、開放-封閉原則
open模組的行為必須是開放的、支援擴充套件的,而不是僵化的。
closed在對模組的功能進行擴充套件時,不應該影響或大規模影響已有的程式模組。一句話概括:乙個模組在擴充套件性方面應該是開放的而在更改性方面應該是封閉的。
核心思想就是對抽象程式設計,而不對具體程式設計。
4、替換原則
子型別必須能夠替換掉他們的父型別、並出現在父類能夠出現的任何地方。
主要針對繼承的設計原則
1)父類的方法都要在子類中實現或者重寫,並且派生類只實現其抽象類中生命的方法,而不應當給出多餘的,方法定義或實現。
2)在客戶端程式中只應該使用父類物件而不應當直接使用子類物件,這樣可以實現執行期間繫結。
5、依賴倒置原則
上層模組不應該依賴於下層模組,他們共同依賴於乙個抽象,即:父類不能依賴子類,他們都要依賴抽象類。
抽象不能依賴於具體,具體應該要依賴於抽象。
物件導向程式設計思想(OOP)
本文我將從物件導向程式設計思想是如何解決軟體開發中各種疑難問題的角度,來講述我們物件導向程式設計思想的理解,梳理物件導向四大基本特性 七大設計原則和23種設計模式之間的關係。軟體開發中疑難問題 軟體開發中存在很多其他的問題,上面只是從程式開發和設計的角度看到的部分問題。需求解決上面軟體開發中的問題,...
物件導向程式設計思想(OOP)總結
本文我將從物件導向程式設計思想是如何解決軟體開發中各種疑難問題的角度,來講述我們物件導向程式設計思想的理解,梳理物件導向四大基本特性 七大設計原則和23種設計模式之間的關係。軟體開發中疑難問題 軟體開發中存在很多其他的問題,上面只是從程式開發和設計的角度看到的部分問題。需求解決上面軟體開發中的問題,...
OOP物件導向程式設計 C
oop程式設計的一些概念 一 物件 object 這個概念可以說是物件導向裡面的最為核心的概念,如果找不著物件,又如何物件導向呢?物件,也就是你要處理的問題裡面設計的若干個因素,比如你做學生成績統計,那麼學生當然是你要考慮的物件。二 類 class 從本質上講是先有物件才有類,因為在處理的實際程式設...