Java學習筆記——第3篇

面向對象

結構化程序的任何一個結構都具備惟一的入口和惟一的出口,而且程序不會出現死循環。編程

雖然Java是面向對象的,但Java的方法裏則是一種結構化的程序流。spa

 

面向對象的基本思想:類、對象、繼承、封裝、消息……設計

 

採用面向對象方式開發的軟件系統,其最小的程序單元是類,這些類能夠生成系統中的多個對象。對象

 

面向對象的語言不只使用類來封裝一類事物的內部狀態數據,,還會提供操做這些狀態數據的方法。blog

成員變量(狀態數據)+方法(行爲)=類定義繼承

 

 

面向對象方法具備三個基本特徵:封裝、繼承、多態ip

封裝:將對象的實現細節隱藏起來,而後經過一些公用方法來暴露該對象的功能;開發

繼承:面向對象實現軟件複用的重要手段,當子類繼承父類後,子類做爲一種特殊的父類,將直接得到父類的屬性和方法。部署

多態:多態指的是子類對象能夠直接賦值給父類變量,但運行時依然表現出子類的行爲特徵,這意味着同一個類型的對象在執行同一個方法時,可能表現出多種行爲特診。模板

 

抽象也是面向對象的重要部分

 

 

 

 

 

因爲多繼承可能引發繼承結構的混亂,並且會大大下降程序的可理解性,因此Java不支持多繼承

 

基於對象」≠「面向對象

 

基於對象也使用了對象,可是沒法利用現有的對象模板產生新的對象類型,繼而產生新的對象。JavaScript語言就是基於對象的,它使用一些封裝好的對象,調用對象的方法,設置對象的屬性,可是他們沒法讓開發者派生新的類,開發者只能使用現有對象的方法和屬性。

 

 

UML(統一建模語言)介紹

面向對象軟件開發須要通過:OOA(目標系統分析,創建分析模型) /OOD(用面向對象的思想細化OOA的結構)/ OOP(編程)

 

uml是用來描述、記錄OOA OOD結果的符號表示法。

 

 

 

 

最經常使用的UML圖包括:用例圖,類圖,組件圖,部署圖,順序圖,活動圖和狀態機圖等。

 

Java的面向對象特徵

 

一切都是對象

Java語言中,除八個基本數據類型值以外,一切都是對象,而對象就是面向對象程序設計的中心。

對象具備狀態,一個對象用數據值來描述它的狀態。

對象還具備操做,這些操做能夠改變對象的狀態,也稱之爲行爲。

 

Java語言不容許直接訪問對象,而是經過對對象的引用來操做對象。

 

類和對象

類是對一類事物的描述,是抽象的,概念上的定義。

對象是實際存在的該類事物的個體,所以也稱爲實例

對象的抽象化就是類,類的具體化就是對象。

 

Java語言使用class關鍵字定義類,定義類時可以使用成員變量來描述該類對象的數據,可以使用方法來描述該類對象的行爲特徵。

類間關係:

通常特殊關係(典型的繼承關係,Java中使用extends關鍵字來表示這種繼承關係,is a

總體部分結構關係(組裝結構,典型的組合關係,Java經過在一個類裏保存另外一個對象的引用來實現這種組合關係,has a

相關文章
相關標籤/搜索