理解Java的面向對象—Java學習(2)

一、程序設計的3種基本結構

1.順序結構
2.選擇結構
3.循環結構

二、面向對象程序設計簡介

1.採用面向對象方式開發的系統,最小程序單元是類,以對象爲中心
eg:豬八戒.吃(西瓜);
2.成員變量(狀態數據)+方法(行爲)=類定義
3.面向過程的程序單位是函數(相當於方法),以函數爲中心
eg:吃(豬八戒,西瓜);

三、面向對象的基本特徵

1.封裝:隱藏對象細節,通過公共方法暴漏該對象的功能
2.繼承:實現軟件複用,子類直接獲得父類的屬性和方法
3.多態:同一個對象執行同一方法時可能表現出多種行爲特徵
4.抽象不是基本特徵,但是重要的一部分:忽略不重要的部分(

四、UML(統一建模語言)

面向對象開發需要經過:
OOA(面向對象分析):分析、建立模型、並文檔化
OOD(面向對象設計):對OOA進行細化,得出設計模型
OOP(面向對象編程):

UML即用於描述、記錄OOA與OOD結果的符號表示法,共有13種UML圖形,最常用的:
1.用例圖: 僅僅是系統功能的描述,一般表示出用例的組織關係,用在需求分析,與類無聯繫
1.每個用例代表系統的一個功能模塊
2.依賴表示用例之間的關係
這裏寫圖片描述

2.類圖: 表示系統中應該有哪些實體,各實體之間如何關聯,使用3個矩形表示
-:表示private
+:表示public
#:表示private
這裏寫圖片描述

類之間有三種關係:
1.關聯(聚合、組合):特殊的是聚合和組合,都有部分跟整體的關係,組合更加嚴格
這裏寫圖片描述


2.泛化(與繼承同一個概念):類之間的繼承關係,類實現接口可視爲一種特殊的繼承,用帶空心的虛線表示
這裏寫圖片描述


3.依賴:一個類的改動會帶動另一個類的改動,箭頭指向被依賴的實體
改動的類將消息發給另一個類;改動的類以另一個類作爲數據部分;改動的類以另一個類作爲操作參數
這裏寫圖片描述

3.組件圖: 提供系統的物理圖,顯示系統中的軟件對其他軟件組件(例如函數庫)的依賴關係

通常包括:組件、接口和Port等圖元
圓圈代表接口,位於組件邊界上的小矩形代表Port
組件的接口表示他能對外提供的服務範圍:2種表現方式:1.用一條實線連接到組件邊界的圓圈表示2.使用位於組件內部的圓圈表示
組件除了對外提供服務,還能依賴於某個接口,使用一條半圓的實線表示
這裏寫圖片描述

4.部署圖:用於描述軟件系統如何部署到硬件環境,顯示軟件系統不同的組件將如何物理運行,以及如何彼此通信,符號包括組件圖中使用的符號,另外還增加了節點的概念,

節點:使用三維立方體表示節點,節點名稱位於立方體頂部,各種計算機資源的通用名稱,主要包括處理機(能夠執行程序的硬件構建)跟設備(不具有計算能力的硬件構件)兩種類型
這裏寫圖片描述
整個應用分爲5個組件:部署圖準確的表現了各組件之間的依賴關係,除此之外,部署圖的重點在於物理節點上,如圖反映了該應用需要部署在4個物理節點上,
普通客戶端無需部署任何組件,直接用客戶端瀏覽器即可,
管理者客戶機上需要部署UI界面
應用服務器上需要部署Student,Administrator和應用持久層三個組件
數據庫服務器上需要部署Student數據庫


5.順序圖: 描述了對象之間的交互(順序圖跟通信圖都被稱之爲交互圖),重點在於描述消息及其時間順序包括兩個維度:
1.垂直維度:以發生的時間順序顯示消息/調用的序列
2.水平維度:顯示消息被髮送到的對象實例

順序圖關鍵在於對象之間的消息,箭頭表示消息,消息通常表現爲對象調用另一個對象的方法或者方法的返回值。
3.順序圖的繪製:頂部每個框表示每個類的實例(對象),框中的類實例名稱和類名稱之間用冒號或空格分隔
順序圖擅長表現對象之間的協作順序,不擅長表現行爲的準確定義
這裏寫圖片描述

6.活動圖:一個開始可以有多個結束 7.狀態機圖

五、Java的面向對象特徵

**1、一切都是對象:**除了8個基本數據類型值除外,一切都是對象,對象有狀態(用數值來描述,通過爲對象定義成員變量來描述對象的狀態),對象還有操作(可以改變狀態),也稱爲對象的行爲,Java通過爲對象定義方法來描述對象的行爲。
對象是Java程序的核心,實現了數據和操作的結合,把數據和對數據的操作封裝成了一個有機的整體。

Java語言不允許直接訪問對象,而是通過對象的引用來操作對象。
**2.類和對象:**類:具有相同或者相似性質的一組對象的抽象。
對象也稱爲實例。對象的抽象化是類,類的具體化是對象。

類通常有兩種主要的結構關係:
(1)一般到特殊:典型的繼承關係,extends表示, “is a ”關係,蘋果is a 水果
(2)整體到部分結構關係:組裝結構,典型的組合關係,“has a ”關係,

定義了類之後就可以用new關鍵字來創建指定類的對象,沒給我類可以有任意個對象

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章