【UML】2.部分與整體的媒介:關係
UML模組中的任何事物都不是獨立存在的,他們之間存在著一定的關係。下面就對這些關係,分類瞭解一下。
一.概念
【關聯】Association
兩個類存在某種語義上的聯絡,關聯有單向關聯和雙向關聯。
【聚合】Aggregation
類之間是整體和部分的關係。”聚”表示聚在一起的意思,也表示“部分”可以獨立”整體”存在。描述“has-a”的關係。
【組合】Composition
整體有管理部分的特有的職責並且他們有一致的生命期,部分不能脫離整體存在。描述“contains-a”的關係。
【泛化】Generalization
泛化是一般事物和該事物特殊種類之間的關係,描述類之間“Is a kind of”的關係。子類繼承父類,又分為單繼承和多繼承,由名字可知:子類繼承單個父類的屬性和操作就是單繼承。
泛化的通過修改父類而修改子類共同的屬性和方法,實現程式碼的重用,也有利於系統維護。
【依賴】Dependency
是兩個事物之間的使用關係。A依賴於B。當B發生改變的時候A也會改變。
【實現】Realization
用來規定介面和實現介面的類或元件之間的關係,不繼承結構只繼承行為。一個介面的實現,要先實現對應的類,一個類可以有多個介面。實現使用的情況:1.在介面與實現介面的類間。2.在用例以及實現該用例的協作間
二、例項
【關聯】一個人為一家公司工作
【聚合】書架上放著書
【組合】鳥和翅膀
【泛化】人類,分為男人和女人
【依賴】系統和單個窗體
【實現】籃球得分的方式。扣籃,投籃,罰球
三、Rational Rose表示
【關聯】
1.關聯用橫實線表示 2.employee表示person類扮演的角色 3.n和1表示多重性關係。一個公司有許多員工
【聚合】
1.聚合用帶空心菱形頭的實線表示 2.菱形頭指向整體。
【組合】
在聚合的基礎上把空心的變成實心的。
【泛化】
1.帶空心箭頭的實線表示 2.由子類指向父類 3.此圖表示單繼承
【依賴】
1.帶箭頭的虛線表示 2.A依賴於B,則A指向B
【實現】
1.帶空心箭頭的虛線表示 2.一個類可以有多個介面 3.類指向介面
四、對比分析
1.聚合和組合是特殊的關聯。某種意義上說,關聯,泛化和實現都屬於依賴關係的一種。
2.聚合和組合都表示部分和整體的關係。但是聚合表示部分能夠脫離整體而存在。例如汽車和輪胎。而組合表示部分不能脫離整體存在。當整體不存在了,部分也就沒有存在的意義。例如鳥和翅膀。不過同一個部分和整體在不同的環境中,表示也可能不同。例如對於汽車製造商來說,汽車和輪胎是聚合關係。而對於汽車銷售商來說,汽車和輪胎就是組合的關係了。
3.這幾種關係是語義級別的不同。按照關係表現的強弱依次是:泛化=實現>組合>聚合>關聯>依賴
五、總結
相關文章
- 【UML入門教程】——UML關係
- UML類圖與類的關係詳解
- UML類圖關係
- 再次說UML 中的關係
- UML 類圖及關係
- UML中類之間的關係
- Overit:一張圖瞭解如何測量與媒介關係成功與否
- 設計模式--UML關係與程式碼對照設計模式
- UML類圖--類之間的關係
- 五分鐘看懂UML類圖與類的關係詳解
- 設計模式-UML關係基礎設計模式
- 大話UML中類之間的關係
- UML類圖幾種關係的總結
- 我所理解的OOP——UML六種關係OOP
- [全程建模]UML應用與實踐的對話——需求中流程與用例的關係
- SGA與共享記憶體的關係記憶體
- UML類圖介紹&類的六大關係
- UML 之 各種檢視簡介 & UML類圖幾種關係的總結
- 與if的關係
- 關聯關係與依賴關係的區別
- UML關係(泛化,實現,依賴,關聯(聚合,組合))
- 物聯網與erp軟體的關係
- 設計模式存在哪些關聯關係,六種關係傻傻分不清--- UML圖示詳解設計模式
- 使用整體MES+QMS重新定義成本質量關係
- 一張圖讓你記住uml的常用關係的簡單圖例
- Scala與Java的關係Java
- Object與Class的關係Object
- sip與openser的關係
- act與zsh的關係
- 好文分享:軟體測試與世界盃的關係
- 系統思考最大的錯誤是整體與部分傻傻分不清 - Harish Jose
- 學者和媒體的關係
- 現代語文與軟體測試學的關係
- 淨室與其他軟體工程實踐的關係 (轉)軟體工程
- SQL與NoSQL(關係型與非關係型)資料庫的區別SQL資料庫
- ebs11.5客戶關係表部分
- 行高與字型的關係
- create 與 store中的關係