UML之類圖簡介:
UML之類圖簡介:
統(tǒng)一建模語言(Unified Modeling Language,UML)是一種為面向?qū)ο笙到y(tǒng)的產(chǎn)品進行說明、可視化和編制文檔的一種標準語言,是非專利的第三代建模和規(guī)約語言。UML是面向?qū)ο笤O(shè)計的建模工具,獨立于任何具體程序設(shè)計語言。
UML的分類
結(jié)構(gòu)型的圖(Structure Diagram)
類圖(Class Diagram)
對象圖(Object Diagram)
構(gòu)件圖(Component Diagram)
部署圖(Deployment Diagram)
包圖(Package Diagram)
行為型的圖(Behavior Diagram)
活動圖(Activity Diagram)
狀態(tài)機圖(State Machine Diagram)
順序圖(Sequence Diagram)
通信圖(Communication Diagram)
用例圖(Use Case Diagram) ?
時序圖(Timing Diagram)
本節(jié)主要介紹類圖相關(guān)的知識,為后面設(shè)計模式提前準備一些知識;
類圖是描述系統(tǒng)中的類,以及各個類之間的關(guān)系的靜態(tài)視圖。能夠讓我們在正確編寫代碼以前對系統(tǒng)有一個全面的認識。類圖是一種模型類型,確切地說,是一種靜態(tài)模型類型。類圖表示類、接口和它們之間的協(xié)作關(guān)系。
1.類的表示方式
在UML類圖中,類使用包含類名、屬性(field) 和方法(method) 且?guī)в蟹指罹€的矩形來表示
暫時無法在飛書文檔外展示此內(nèi)容
+:表示public
-:表示private
:表示protected
2.類與類之間關(guān)系的表示方式
泛化(繼承)、實現(xiàn)、依賴、關(guān)聯(lián)、組合、聚合
繼承(泛化)、實現(xiàn)(實現(xiàn))
這兩種關(guān)系比較簡單,它們體現(xiàn)的是一種類與類、或者類與接口之間的縱向關(guān)系
其他的四種關(guān)系則體現(xiàn)的是類與類、或者類與接口之間的引用/橫向關(guān)系
。這四種關(guān)系所表現(xiàn)的強弱程度來看,從強到弱依次為:組合>聚合>關(guān)聯(lián)>依賴
。

泛化(繼承):
這個簡單,就是子類繼承父類 ,箭頭指向父類
實現(xiàn):
類實現(xiàn)某個接口,箭頭指向接口類
依賴:
依賴關(guān)系是一種使用關(guān)系,它是對象之間耦合度最弱的一種關(guān)聯(lián)方式,是臨時性的關(guān)聯(lián)。在代碼中,某個類的方法通過局部變量、方法的參數(shù)或者對靜態(tài)方法的調(diào)用來訪問另一個類(被依賴類)中的某些方法來完成一些職責。
箭頭指向被依賴的類
比如:人和空氣和水是 依賴關(guān)系
暫時無法在飛書文檔外展示此內(nèi)容
關(guān)聯(lián):
關(guān)聯(lián)關(guān)系是對象之間的一種引用關(guān)系,用于表示一類對象與另一類對象之間的聯(lián)系,
引用的關(guān)系就是一個類持有另一個類的引用,通常是一個類里面有的屬性的類型是另一個類,
簡單的說一個類是另一個的成員變量 (上面的依賴是局部變量)
分為一般關(guān)聯(lián)關(guān)系、聚合關(guān)系和組合關(guān)系,聚合和組合是一種特殊的關(guān)聯(lián)關(guān)系
箭頭指向被關(guān)聯(lián)的類
一般關(guān)聯(lián)又可以分為單向關(guān)聯(lián),雙向關(guān)聯(lián),自關(guān)聯(lián)。
暫時無法在飛書文檔外展示此內(nèi)容
自關(guān)聯(lián)就是自己持有自己:經(jīng)典單例模式
聚合:
聚合關(guān)系(Aggregation)表示的是整體和部分的關(guān)系,整體與部分可以分開。聚合關(guān)系是關(guān)聯(lián)關(guān)系的特例
聚合關(guān)系也是通過成員對象來實現(xiàn)的,其中成員對象是整體對象的一部分,但是成員對象可以脫離整體對象而獨立存在。
如:電腦是有鍵盤、顯示器、鼠標等組成,及學校和學生的關(guān)系
空心菱形指向整體
暫時無法在飛書文檔外展示此內(nèi)容
組合:
組合表示類之間的整體與部分的關(guān)系,但它是一種更強烈的聚合關(guān)系。
在組合關(guān)系中,整體對象可以控制部分對象的生命周期,一旦整體對象不存在,部分對象也將不存在,部分對象不能脫離整體對象而存在
如:鳥和翅膀關(guān)系
暫時無法在飛書文檔外展示此內(nèi)容