2013-11-24 90 views

回答

0

區別比其他任何東西都更具概念性。如果你有一個屬性附加到一個關聯,那麼你將有一個關聯類,並具有所需的屬性。

這裏是一個郵遞員送信給客戶的一個例子(屬性weight必然關聯):

enter image description here

+0

Hi @ Bastien! '如果你有一個財產附加到一個協會,那麼你將有一個協會類'我想,這句話是不夠精確的。 據我所知,當你關聯兩個或更多的類時,這要歸功於兩個「UML屬性」。後者是你的關聯的「結尾」,並且是「實例」,即它們是通過它們的類來鍵入的。因此,在類圖上的兩個類之間創建了一個關聯,但是在每個類與關聯之間您都有一個「UML屬性」。現在,「協會擁有的財產和類擁有的財產之間的區別是什麼」 – Chriss

+0

好的,我沒有正確理解你的問題。我得到了'類屬性和關於兩個類之間的鏈接的屬性之間有什麼區別'。類和屬性之間的差異如下:類屬性不表示圖中對象之間的任何關聯。它們只是沒有出現在圖表中的類型(整數,數組,某些類...)。邊上的屬性將表示實例之間的關係。在上面的UML中,'Client'類將生成'Mailman'類的'sender'屬性。 –

+0

這是否意味着如果屬性表示爲'associationEnd',它將是類的一個實例。 如果屬性表示爲'attribute',那麼它將是類的屬性? 感謝兄弟@Bastien Pasdeloup :) – Chriss

0

所不同的是非常具體的,但傳統上被忽略。

  • A被關聯到B. A,B是類。
  • 如果關聯的B端是「關聯擁有」並且可導航,則意味着您可以通過引用或某種方法輕鬆地從A到達B的實例。它應該用箭頭表示。
  • 如果B端是「分類所有者」,那麼您知道有點多。這意味着,A有一個屬性,那就是直接參考。 (這裏沒有功能或引用計數)。它應該用箭頭和「點」來表示 - 一個黑色的小圓圈。

如果你打算通過a.smth.smthelse.b到B,它是箭頭,但肯定沒有點

如果你打算通過A·B到B,它是箭頭

如果你還沒有決定,它是箭頭再次。

  • 傳統建模人員只顯示箭頭。但這不是一個好傳統,並且違背了UML標準。如果我們儘可能多地決定圖表,而不是代碼,圖表會更有用。

  • 如果兩端都可導航,則兩個箭頭消失,您可能只會看到點。

  • 關聯線的一邊是交叉點,一邊是箭頭而另一邊是點,但是沒有意義。