面向物件的特點 4個方面帶你瞭解

來源:時尚少女範 2.39W
面向物件的特點 4個方面帶你瞭解

1、抽象

忽略一個主題中與當前目標無關的東西,專注的注意與當前目標有關的方面。(就是把現實世界中的某一類東西,提取出來,用程式程式碼表示,抽象出來的一般叫做類或者介面)。抽象並不打算了解全部問題,而是選擇其中的一部分,暫時不用部分細節。抽象包括兩個方面,一個數據抽象,而是過程抽象。

資料抽象 -->表示世界中一類事物的特徵,就是物件的屬性。比如鳥有翅膀,羽毛等(類的屬性)

過程抽象 -->表示世界中一類事物的行為,就是物件的行為。比如鳥會飛,會叫(類的方法)

2、封裝

封裝是面向物件的特徵之一,是物件和類概念的主要特性。封裝就是把過程和資料包圍起來,對資料的訪問只能通過已定義的介面。如私有變數,用set,get方法獲取。

封裝保證了模組具有較好的獨立性,使得程式維護修改較為容易。對應用程式的修改僅限於類的內部,因而可以將應用程式修改帶來的影響減少到最低限度。

3、繼承

一種聯結類的層次模型,並且允許和鼓勵類的重用,提供一種明確表達共性的方法。物件的一個新類可以從現有的類中派生,這個過程稱為類繼承。新類繼承了原始類的特性,新類稱為原始類的派生類(子類),原始類稱為新類的基類(父類)。派生類可以從它的父類哪裡繼承方法和例項變數,並且類可以修改或增加新的方法使之更適合特殊的需要。因此可以說,繼承為了重用父類程式碼,同時為實現多型性作準備。

4、多型

多型是指允許不同類的物件對同一訊息做出響應。多型性包括引數化多型性和包含多型性。多型性語言具有靈活/抽象/行為共享/程式碼共享的優勢,很好的解決了應用程式函式同名問題。總的來說,方法的重寫,過載與動態連結構成多型性。java引入多型的概念原因之一就是彌補類的單繼承帶來的功能不足。

動態連結 -->對於父類中定義的方法,如果子類中重寫了該方法,那麼父類型別的引用將呼叫子類中的這個方法,這就是動態連結。

熱門標籤