2016-01-24 48 views
-2

考慮以下圖: enter image description here溝通了解到圖

我想這些圖表轉換成Java代碼,但我覺得很難推測通信圖。我在網上搜索了很多東西,但找不到解釋它流動的東西(如何從字面上讀取它),只是「它的含義」。我知道B類是A的一個子類,而B和C彼此都知道(並且它們中的每一個都有另一個的私有成員),但是,箭頭和索引的含義是什麼? B類調用自己的c的op3?但是何時,爲什麼如何?

+2

這不是Java的問題去閱讀你的教授的筆記 – gpasch

+0

你也應該指出你的教授認爲,類圖中顯示的虛線箭頭不是UML。我假設他想使用依賴關係,但UML中的依賴關係不能是雙向的,而箭頭符號略有不同。它應該是一個開放的箭頭有點像這樣:'--->' –

回答

1

按照編號:

  1. 創建B類的實例(然後成爲:B
  2. :B:C
    1. 創建的C
    2. :B一個新的實例調用該方法op3():C調用op2():B
      1. :B電話op1()(從超A)本身
+1

這個答案我喜歡除了事實B改變了它的名字一半。 –

+0

@ChrisReynolds您需要將第一個句子作爲'B類'的實例來讀取,然後是'B:'。我會改變這一點。 –

+0

Thomas,我認爲你的':A'實例應該被':B'實例替代。這裏只涉及兩個實例,當然你可以完美地調用在子類「B」的實例上定義在超類「A」上的操作:B' –