1. 程式人生 > >從0開始學習設計模式-UML示例圖

從0開始學習設計模式-UML示例圖

類圖: 在這裡插入圖片描述 如圖所示,第一行代表類名稱,如果為斜體則代表其為抽象類;第二行代表屬性,即類所包含的屬性或者特性;第三行代表類所具有的操作,一般為行為或者方法。+代表public,-代表private,#代表protected 在這裡插入圖片描述 如圖所示,—>代表依賴關係,如同動物必須依賴氧氣和水的實現一樣,實線空心箭頭代表繼承關係 在這裡插入圖片描述 該圖為詳細的UML用例基礎圖形,幾個注意的點

  1. 介面有兩種表示法,兩行結構的表示裡,頂端為<>,第一行為介面名稱,第二行為介面方法;棒棒糖表示法中,圓圈旁為介面名稱,介面方法在其實現類中出現。
  2. 合成(組合)關係的表示由一個起始點為實心菱形的實線箭頭來連線兩個類。它表示了強的’擁有’關係,體現了嚴格的部分和整體的關係,部分和整體的生命週期完全一致。合成關係兩端的數字表示基數,代表了可以擁有的例項數量,如果有多個例項,則用n表示。關聯關係和聚合關係兩端也可以有基數。
  3. 關聯關係表示類之間具有關聯,類的行為受另一個類的行為或者變化來影響,例如,企鵝需要’知道’氣候的變化,'瞭解’氣候規律來做決定是否遷移。關聯關係用實線箭頭來表示,兩者的關係是平等的。
  4. 聚合關係代表類之間一種弱的’擁有’關係,即A物件可以包含B物件,但B物件不屬於A物件的一部分,例如,雁群中由多隻大雁組成,但是整體和部分是可分離的,有各自的生命週期,一隻大雁既可屬於多個雁群,也可為多個雁群所共享,不同於關聯關係,聚合關係中的地位是不平等的。聚合關係由空心菱形的實線箭頭來表示。