UML中符號的意義

2021-05-25 15:06:09 字數 2470 閱讀 5463

類之間的關係

uml把類之間的關係分為以下5種.

● 關聯:類a與類b的例項之間存在特定的對應關係

● 依賴:類a訪問類b提供的服務

● 聚集:類a為整體類,類b為區域性類,類a的物件由類b的物件組合而成

● 泛化:類a繼承類b

● 實現:類a實現了b介面  

關聯(association)

關聯指的是類之間的特定對應關係,在uml中用帶實線的箭頭表示。按照類之間的數量對比,關聯

可以分為以下三種:

● 一對一關聯

● 一對多關聯

● 多對多關聯

注意:關聯還要以分為單向關聯和雙向關聯

依賴(dependency)

依賴指的是類之間的呼叫關係,在uml中用帶虛線的箭頭表示。如果類a訪問類b的屬性或者方法,

或者類a負責例項化類b,那麼可以說類a依賴類b。和關聯關係不同,無須在類a中定義類b型別的屬性。

聚集(aggregation)

聚集指的是整體與部分之間的關係,在uml中用帶實線的菱形箭頭表示。

聚集關係還可以分為兩種型別:

● 被聚集的子系統允許被拆卸和替換,這是普通聚集關係。

● 被聚集的子系統不允許被拆卸和替換,這種聚集稱為強聚集關係,或者組成關係。

注:強聚集(組成)可用帶實線的實心菱形箭頭表示。   

泛化(generalization)

泛化指的是類之間的繼承關係,在uml中用帶實線的三角形箭頭表示。  

實現(realization)

實現指的是類與介面之間的關係,在uml中用帶虛線的三角形箭頭表示。

以下是gof設計模式中的描述:

箭頭和三角表示子類關係。

虛箭頭線表示乙個類例項化另乙個類的物件,箭頭指向被例項化的物件的類。

普通的箭頭線表示相識(acquaintance也叫關聯或者引用),意味著乙個物件僅僅知道另乙個物件。相識的物件可能請求彼此的操作,但他們不為對方負責,它只標示了物件間較鬆散的耦合關係。

尾部帶有菱形的箭頭線表示聚合(aggregation),意味著乙個物件擁有另乙個物件或者對另乙個物件負責。一般我們稱乙個物件包含另乙個物件,或者是另乙個物件的一部分。聚合意味著聚合物件和其所有者具有相同的生命週期。   

抽象類名以斜體表示,抽象操作也以斜體表示。圖中可以包括實現操作的偽**,**將出現在帶有褶角的框中,並用虛線將該褶角框與**所實現的操作相連。

圖一:

此實線箭頭表示, 繼承, 從乙個非介面類的繼承.

圖二:

那條連線表示雙向關聯:

看左邊, flight扮演assignedfights角色, 有0到1個plane跟他關聯(乙個航班要麼取消了沒有飛機,要麼只能對應一架飛機)

看右邊, plane扮演著assignedplane角色, 有0到多個flight跟他關聯(乙個飛機可以參與多個航班, 也可以停在倉庫裡面爛掉)

圖三:

那條連線表示單向關聯:

基本的意義跟上面的是一樣的, 唯一不同的是, 右邊的類對左邊的類是一無所知的.

圖四:

那個大的包圍的框叫軟體包, 名字為account, 就一些可以歸類的類包裝起來.

圖五:

如此虛線的箭頭表示實現乙個介面.

圖六:

水平的連線還是表示上面所說的關聯, 但從關聯連線中引伸出來的虛線, 這意味當flight類的乙個例項關聯到 frequentflyer 類的乙個例項時,將會產生 mileagecredit 類的乙個例項.

圖七:帶菱形的箭頭表示基本聚合, 由上圖知道, wheel類扮演wheels角色, 聚合4個到car物件裡面去,

空心的菱形表示wheel物件並不隨car的建立而建立,銷毀而銷毀.

圖八:意義和上面類似, 唯一不同的是, 實心菱形表示department物件隨company物件的建立而建立,銷毀而銷毀.

圖九:

表示反射關聯, 顯示乙個employee類如何通過manager / manages角色與它本身相關。當乙個類關聯到它本身時,這並不意味著類的例項與它本身相關,而是類的乙個例項與類的另乙個例項相關。

UML中一些符號的意義

虛線箭頭表示 依賴關係 依賴有 使用 的語義,比如患者與醫生的關係。實線箭頭表示 帶了導航行的關聯關係 從乙個類到另一類。使用實線箭頭時通常會帶上 多重性 的表達方式。如 一對多,一對一,多對多等等 常見的關係有 一般化關係 generalization 關聯關係 association 聚合關係 ...

js中 符號的意義

非運算子 非運算子用符號 表示,其運算規律如下 如果位為0,結果是1,如果位為1,結果是0,下面看乙個簡單例子。n 10 m n 變數n的二進位制數形式 00000000 00000000 00000000 00001010 逐位取反後,等於十進位制的 11 11111111 11111111 11...

oracle中 符號的意義

是 oracle 中呼叫 儲存過程的時候,指定 引數名進行呼叫.一般是,某些引數有預設值的時候,你需要跳過某些引數來進行呼叫。下面是具體的例子。引數的預設值 sql create or replace procedure helloworld3 2 p user name varchar2,3 p ...