1. 類(Class):使用三層矩形框表示止吁。? 第一層顯示類的名稱,如果是抽象類燎悍,則就用斜體顯示敬惦。? 第二層是字段和屬性。? 第三層是類的方法谈山。? 注意前面的符號俄删,‘+’表示public,‘-’表示private,‘#’表示protected畴椰。
2. 接口:使用兩層矩形框表示臊诊,與類圖的區(qū)別主要是頂端有<>顯示 。 ? 第一行是接口名稱迅矛。 ?第二行是接口方法妨猩。
3. 繼承類(extends) :用空心三角形+實(shí)線來表示。
4. 實(shí)現(xiàn)接口(implements) :用空心三角形+虛線來表示
5. 關(guān)聯(lián)(Association) :用實(shí)線箭頭來表示秽褒,例如:燕子與氣候
6. 聚合(Aggregation) :用空心的菱形+實(shí)線箭頭來表示 ? 聚合:表示一種弱的‘擁有’關(guān)系壶硅,體現(xiàn)的是A對象可以包含B對象,但B對象不是A對象的一部分销斟,例如: 公司和員工
7.組合(Composition):用實(shí)心的菱形+實(shí)線箭頭來表示 ?組合:部分和整體的關(guān)系庐椒,并且生命周期是相同的。例如:人與手
8. 依賴(Dependency) :用虛線箭頭來表示蚂踊,例如:動物與氧氣
9. 基數(shù) :連線兩端的數(shù)字表明這一端的類可以有幾個實(shí)例约谈,比如:一個鳥應(yīng)該有兩只翅膀。如果一個類 可能有無數(shù)個實(shí)例犁钟,則就用‘n’來表示棱诱。關(guān)聯(lián)、聚合涝动、組合是有基數(shù)的迈勋。
類之間的關(guān)系 ? ? UML把類之間的關(guān)系分為以下5種.
● 關(guān)聯(lián):類A與類B的實(shí)例之間存在特定的對應(yīng)關(guān)系
● 依賴:類A訪問類B提供的服務(wù)
● 聚集:類A為整體類,類B為局部類醋粟,類A的對象由類B的對象組合而成
● 泛化:類A繼承類B
● 實(shí)現(xiàn):類A實(shí)現(xiàn)了B接口 ? 關(guān)聯(lián)(Association)
關(guān)聯(lián)指的是類之間的特定對應(yīng)關(guān)系靡菇,在UML中用帶實(shí)線的箭頭表示。按照類之間的數(shù)量對比米愿,關(guān)聯(lián) ?可以分為以下三種:
● 一對一關(guān)聯(lián)
● 一對多關(guān)聯(lián)
● 多對多關(guān)聯(lián)
注意:關(guān)聯(lián)還要以分為單向關(guān)聯(lián)和雙向關(guān)聯(lián)
依賴(Dependency) ? ? 依賴指的是類之間的調(diào)用關(guān)系厦凤,在UML中用帶虛線的箭頭表示。如果類A訪問類B的屬性或者方法育苟, ?或者類A負(fù)責(zé)實(shí)例化類B较鼓,那么可以說類A依賴類B。和關(guān)聯(lián)關(guān)系不同宙搬,無須在類A中定義類B類型的屬性笨腥。
聚集(Aggregation) ? ? 聚集指的是整體與部分之間的關(guān)系,在UML中用帶實(shí)線的菱形箭頭表示勇垛。 聚集關(guān)系還可以分為兩種類型:
●被聚集的子系統(tǒng)允許被拆卸和替換,這是普通聚集關(guān)系士鸥。
● 被聚集的子系統(tǒng)不允許被拆卸和替換闲孤,這種聚集稱為強(qiáng)聚集關(guān)系,或者組成關(guān)系。
注:強(qiáng)聚集(組成)可用帶實(shí)線的實(shí)心菱形箭頭表示讼积。
泛化(Generalization)泛化指的是類之間的繼承關(guān)系肥照,在UML中用帶實(shí)線的三角形箭頭表示。
實(shí)現(xiàn)(Realization)?實(shí)現(xiàn)指的是類與接口之間的關(guān)系勤众,在UML中用帶虛線的三角形箭頭表示舆绎。
1.
2.
3.
4.
5.
6.
7.
8.
9.