UML圖記憶技巧
什麼是UML類圖
- Class Diagram:用於表示類、介面、實例等之間相互的靜態關係
- 雖然名字叫類圖,但類圖中並不只有類
記憶技巧
UML箭頭方向:
從子類指向父類
我相信 很多同學都會有和我一樣的想法,認為子類是以父類為基礎的,箭頭應該父類指向子類
那麼我們改如何去記憶呢?
- 定義子類需要通過extends關鍵字去指定父類
- 子類一定是知到父類定義的,但父類不知道子類的定義
- 只有知道對方的定義才能指向對方
- 所以箭頭的方向是子類指向父類
線的含義
實線 –>繼承 虛線–>實現
- 可以看到 大雁是一個類 實現的某個介面 是由它指向介面 因為介面不知道有大雁的定義
- 鴨是的父類 唐老鴨只是其中的一個子類 所以是由它指向父類鴨
如何記憶呢?
- 空心三角形代表: 繼承或者實現
- 實現-繼承: is a的關係,擴展目的,不虛,很結實
- 虛線-實現: 虛線代表 『 需 』 無實體
實線 –>關聯 虛線–>依賴
- 關係穩定,實打實的關係,鐵哥們
- 表示一個類對象和另一個類對象有關聯
- 通常是一個類中有另一個類對象做為屬性
- 可以看到 企鵝的出現是和氣候是有關係的 所以他們是關聯關係
- 虛線–>依賴
- 臨時用一下,若即若離,虛無縹緲,若有若無
- 表示一種使用關係,一個類需要藉助另一個類來實現功能
- 一般是一個類使用另一個類做為參數使用,或作為返回值
菱形
- 菱形就是一個盛東西的器皿(例如盤子)
聚合∶代表空器皿里可以放很多相同東西,聚在一起(箭頭方向所指的類)
組合∶代表滿器皿里已經有實體結構的存在,生死與共
整體和局部的關係
弱關係
消極的詞:弱-空
整體與局部的關係,和聚合的關係相比,關係更加強烈兩者有相同的生命周期,contains-a的關係
強關係
積極的詞∶強-滿