物件導向的基本定義

2021-09-09 05:04:36 字數 1788 閱讀 3739

物件導向是一種程式的設計方法,或者說它是一種程式設計范型,其基本思想是使用物件,類,繼承,封裝,抽象,繼承,多型等方法進行程式設計。

他是從現實世界中客觀存在的事物(即物件)出發來構造軟體系統,並在系統構造中盡可能的運用人類的自然思維方式,強調直接以問題域(現實世界)中的事物為中心來思考問題,認識問題,並根據這些事物的本質特點,把它們抽象的表示為系統中的物件,作為系統的基本構成單位(而不是用一些與現實世界中的事物相關比較遠的,並且沒有對應關係的其他概念來構造系統)。這可以使系統直接地對映問題域,保持問題域中事物及其相互關係的本來面貌。

它可以有不同層次的理解:

從世界觀的角度可以認為:物件導向的基本哲學是認為世界是由各種各樣具有自己的運動規律和內部狀態的物件所組成的;不同物件之間的相互作用和通訊構成了完整的現實世界。因此,人們應當按照現實世界這個本來面貌來理解世界,直接通過物件及其相互關係來反映世界。這樣建立起來的系統才能符合現實世界的本來面目。

從方法學的角度可以認為:物件導向的方法是物件導向的世界觀在開發方法中的直接運用。它強調系統的結構應該直接與現實世界的結構相對應,應該圍繞現實世界中的物件來構造系統,而不是圍繞功能來構造系統。

從程式設計的角度來看,物件導向的程式語言必須有描述物件及其相互之間關係的語言成分。這些程式語言可以歸納為以下幾類:系統中一切皆為物件;物件是屬性及其操作的封裝體;物件可按其性質劃分為類,物件成為類的例項;例項關係和繼承關係是物件之間的靜態關係;訊息傳遞是物件之間動態聯絡的唯一形式,也是計算的唯一形式;方法是訊息的序列。

物件導向的程式語言有封裝、繼承 、抽象、多型等4個主要的特徵。

1.封裝:

封裝是保證軟體部件具有優良的模組性的基礎,封裝的目標就是要實現軟體部件的「高內聚、低耦合」,防止程式相互依賴性而帶來的變動影響。在物件導向的程式語言中,物件是封裝的最基本單位,物件導向的封裝比傳統語言的封裝更為清晰、更為有力。物件導向的封裝就是把描述乙個物件的屬性和行為的**封裝在乙個「模組」中,也就是乙個類中,屬性用變數定義,行為用方法進行定義,方法可以直接訪問同乙個物件中的屬性。通常情況下,只要記住讓變數和訪問這個變數的方法放在一起,將乙個類中的成員變數全部定義成私有的,只有這個類自己的方法才可以訪問到這些成員變數,這就基本上實現物件的封裝,就很容易找出要分配到這個類上的方法了,就基本上算是會物件導向的程式設計了。把握乙個原則:把對同一事物進行操作的方法和相關的方法放在同乙個類中,把方法和它操作的資料放在同乙個類中。

2.抽象:

抽象就是找出一些事物的相似和共性之處,然後將這些事物歸為乙個類,這個類只考慮這些事物的相似和共性之處,並且會忽略與當前主題和目標無關的那些方面,將注意力集中在與當前目標有關的方面。例如,看到乙隻螞蟻和大象,你能夠想象出它們的相同之處,那就是抽象。抽象包括行為抽象和狀態抽象兩個方面。

3.繼承:

在定義和實現乙個類的時候,可以在乙個已經存在的類的基礎之上來進行,把這個已經存在的類所定義的內容作為自己的內容,並可以加入若干新的內容,或修改原來的方法使之更適合特殊的需要,這就是繼承。繼承是子類自動共享父類資料和方法的機制,這是類之間的一種關係,提高了軟體的可重用性和可擴充套件性。

4.多型:

多型是指程式中定義的引用變數所指向的具體型別和通過該引用變數發出的方法呼叫在程式設計時並不確定,而是在程式執行期間才確定,即乙個引用變數倒底會指向哪個類的例項物件,該引用變數發出的方法呼叫到底是哪個類中實現的方法,必須在由程式執行期間才能決定。因為在程式執行時才確定具體的類,這樣,不用修改源程式**,就可以讓引用變數繫結到各種不同的類實現上,從而導致該引用呼叫的具體方法隨之改變,即不修改程式**就可以改變程式執行時所繫結的具體**,讓程式可以選擇多個執行狀態,這就是多型性。多型性增強了軟體的靈活性和擴充套件性。

5.一切皆物件。

物件導向基本

在類中,我們會定義方法 預設我們定義的方法,pycharm都會自動給我們的方法加上乙個self引數,作為第乙個引數 經過了驗證 self這個東西,只能夠在有self引數的方法中使用 無slef的方法,不可以使用self self的記憶體位址,與對向的記憶體位址是一模一樣的 物件可以有的屬性方法操作,...

關於物件導向的定義

c 中關於物件導向的定義 1.lippman c 的第乙個編譯器cfront的參與開發者,c prime作者 c 通過class的pointers和refrences來支援多型,這種程式設計風格就稱為 物件導向 深度探索c 物件模型p34。文中還提到了其他其中程式設計模型 程式模型即面向過程 抽象資...

物件導向 類與物件的定義

本章目標 了解物件導向的基本概念 了解物件導向的三個主要特徵 掌握類與物件的關係 掌握類的定義 掌握物件的宣告及使用 面向過程與物件導向 程式的發展經歷了兩個主要階段 面向過程 物件導向 對於物件導向與面向過程可以用乙個例子解釋,如乙個木匠要做乙個盒子,那麼做這個盒子的出發點會有兩種方式 物件導向 ...