2013-12-19 150 views
0

我在網上看了很多。但仍然困惑,可能有人能爲我澄清。uml類圖關係問題

我有兩個問題:

  1. CB類的一部分。如果類A需要通過類B(即B.getClassC())中的獲取程序獲得類C。假設AB之間沒有其他關係。那麼我應該在類圖中畫什麼? A-B協會?或A-C協會?
  2. 類型的前一個反例。類B是類A(組合)的一部分。 A與類C有關聯。現在B正在使用C作爲參數。那麼我是否需要指定BC之間的關係?和什麼關係? (使用?)

理論上,問題1中A和B之間存在關係,問題2中B和C之間存在關係。但如果我在類圖中指定所有這些關係,則可能會導致圖更復雜。

在此先感謝。

+0

上課是非常罕見的操作。當然你的意思是別的。我們通常會獲得/設定值。其次,區分類,實例,函數和屬性。第三,「A類是B類的一部分」是什麼意思? B是父母班嗎?有一個屬性的實例是A的一個實例嗎? A被宣佈爲B中的內部類嗎?糾正你的問題,它沒有任何意義。 – Gangnus

+0

組合意味着類A具有由B的實例組成的屬性。 – Gangnus

回答

0

我不會太在意UML中顯示它的正確方式。 UML沒有說明你必須在圖中顯示每一個關係,這會導致一團糟。

您正在談論的'軟'關係,我會離開圖表,或者只是在圖表中顯示爲依賴關係。這意味着如果有什麼用C的變化,然後它會/可以對A.

enter image description here

UML的效果是有溝通的設計。它並沒有說你必須展示一切。我會把這些「軟」的關係排除在畫面之外。構成關係(即在構造函數中形成)是您應該關注的唯一關係。如果它不是您想要展示的構圖關係,請仔細考慮它是否將任何內容傳達給最終用戶。

+0

在如此小的圖中,您必須顯示所有關係,否則它們根本沒有用處。 – Gangnus

+0

它取決於。我發現如果我想說明cardinality,那麼我只是將這些鏈接放在中。uml非常靈活,更像是一個草圖工具,而不是系統的絕對100%視覺表示。 –