UML 常用符號簡明圖解

一 簡略全圖

1、首先看該圖中的動物矩形框,它代表的是一個類,類圖分三層,第一層是類名(動物),第二層是特性(通常我們說的屬性或是字段),第三層是操作(通常我們說的方法或行爲),注意特性和操作前面的+,“+”代表public,“-“代表private,“#”代表protected。在這裏需要注意一下,動物類的名稱是斜體,這就表示該類是抽象類。同樣的鳥類也是抽象類。

2、再看左下角的飛翔,它是一個接口圖,與類圖的不同就在於,頂部有一個<<interface>>,第一行是接口名稱,第二行是接口方法。接口還有一種表示方法是棒棒糖表示法,如圖中的唐老鴨實現講人話的接口。

3、鳥繼承自動物類,鴨繼承自鳥類,唐老鴨又繼承自鴨類,繼承的關係用空心三角形+實線來表示。

4、大雁實現了飛行的接口,接口用虛線+空心三角來實現

5、企鵝需要了解天氣情況,氣候的變化,那麼如果一個類“知道”另一個類時,可以用關聯(association)。關聯關係要用實線箭頭來表示

6、一個雁羣可以包括很多隻雁,但雁並不是雁羣的一部分,像這樣的關係就滿足聚合(aggregation)關係,聚合是一種弱的擁有關係,體現的是A對象可以包含B對象,但B對象不是A對象的一部分。聚合關係用空心菱形+實線表示。

7、合成(composition)是一種強的擁有關係,體現的嚴格的部分與整的關係,部分和整的生命週期一樣。上圖中鳥和翅膀就是合成的關係,其中圖中標註的1,2被稱爲基數。表明這一端的類可以有多個實例,鳥肯定是兩個翅膀嘍,一個是沒法飛的,哈哈。。。。

8、動物與氧氣、水之間是依賴的關係,沒有氧氣和水,動物(當然也包括人)根本是無法生存的,所以嘛。。。。不管是動物還是植物還是高級動物人也好,都要依賴於氧氣和水的,依賴(dependency)關係,用虛線箭頭來表示。

或許還有好多好多其他的常用符號,歡迎朋友們和我一起溝通。

 

 

引用:http://hi.baidu.com/bestwisheslhl/blog/item/af32a0fb0ed485254e4aeaf0.html

 

 

 

 

二  類圖結構事例:

 

  1. 繼承:此實線箭頭表示,  從一個非接口類的繼承.

    uploads/200706/04_211918_1121523.jpg
  2. 雙向關聯
    那條連線表示雙向關聯:
    看左邊, Flight扮演assignedFights角色, 有0到1個Plane跟他關聯(一個航班要麼取消了沒有飛機,要麼只能對應一架飛機)
    看右邊, Plane扮演着assignedPlane角色, 有0到多個Flight跟他關聯(一個飛機可以參與多個航班, 也可以停在倉庫裏面爛掉)
    uploads/200706/04_212112_1121525gl.jpg
  3. 單向關聯
    那條連線表示單向關聯:
    基本的意義跟上面的是一樣的, 唯一不同的是, 右邊的類對左邊的類是一無所知的.
    uploads/200706/04_213002_1121526dxgl.jpg
  4. 軟件包, 那個大的包圍的框叫軟件包,名字爲Account, 就一些可以歸類的類包裝起來.
    uploads/200706/04_213232_1121527rjb.jpg
  5. 實現接口:
    如此虛線的箭頭表示實現一個接口.
    uploads/200706/04_213441_1121529xjc.gif
  6. 多對多關聯:
    水平的連線還是表示上面所說的關聯, 但從關聯連線中引伸出來的虛線, 這意味當Flight類的一個實例關聯到 FrequentFlyer 類的一個實例時,將會產生 MileageCredit 類的一個實例.
    uploads/200706/04_213626_11215210gll.jpg
  7. 基本聚合:

    帶菱形的箭頭表示基本聚合, 由上圖知道, Wheel類扮演wheels角色, 聚合4個到Car對象裏面去,
    空心的菱形表示Wheel對象並不隨Car的創建而創建,銷燬而銷燬.

    uploads/200706/04_213911_11215211jbjh.jpg
  8. 另一種聚合:
    意義和上面類似, 唯一不同的是, 實心菱形表示Department對象隨Company對象的創建而創建,銷燬而銷燬.

    uploads/200706/04_214248_11215212zhjh.jpg
  9. 反射關聯:
    顯示一個Employee類如何通過manager / manages角色與它本身相關。當一個類關聯到它本身時,這並不意味着類的實例與它本身相關,而是類的一個實例與類的另一個實例相關。

    uploads/200706/04_214435_11215213fs.gif

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

有一個更詳細類圖的http://rnylei.javaeye.com/blog/480724

 

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