Java面向對象的三個特征與含義


三大特征是:封裝、繼承和多態。

  封裝是指將某事物的屬性和行為包裝到對象中,這個對象只對外公布需要公開的屬性和行為,而這個公布也是可以有選擇性的公布給其它對象。在java中能使用private、protected、public三種修飾符或不用(即默認defalut)對外部對象訪問該對象的屬性和行為進行限制。

  protected在同包內的類及包外的子類能訪問

 

  繼承是子對象可以繼承父對象的屬性和行為,亦即父對象擁有的屬性和行為,其子對象也就擁有了這些屬性和行為。這非常類似大自然中的物種遺傳。

 

  多態不是很好解釋:更傾向於使用java中的固定用法,即overriding(重寫)和overload(重載)。多態則是體現在overriding(重寫)上,而overload(重載)則不屬於面向對象中多態的范疇,因為overload(重載)概念在非面向對象中也存在。overriding(重寫)是面向對象中的多態,因為overriding(重寫)是與繼承緊密聯系,是面向對象所特有的。多態是指父對象中的同一個行為能在其多個子對象中有不同的表現。也就是說子對象可以使用重寫父對象中的行為,使其擁有不同於父對象和其它子對象的表現,這就是overriding(重寫)。

 

  多態的定義:指允許不同類的對象對同一消息做出響應。即同一消息可以根據發送對象的不同而采用多種不同的行為方式。(發送消息就是函數調用)

  實現多態的技術稱為:動態綁定(dynamic binding),是指在執行期間判斷所引用對象的實際類型,根據其實際的類型調用其相應的方法。

  多態的作用:消除類型之間的耦合關系。

  現實中,關於多態的例子不勝枚舉。比方說按下 F1 鍵這個動作,如果當前在 Flash 界面下彈出的就是 AS 3 的幫助文檔;如果當前在 Word 下彈出的就是 Word 幫助;在 Windows 下彈出的就是 Windows 幫助和支持。同一個事件發生在不同的對象上會產生不同的結果。

 

多態存在的三個必要條件:
  一、要有繼承;
  二、要有重寫;
  三、父類引用指向子類對象。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM