考慮以下圖: 溝通了解到圖
我想這些圖表轉換成Java代碼,但我覺得很難推測通信圖。我在網上搜索了很多東西,但找不到解釋它流動的東西(如何從字面上讀取它),只是「它的含義」。我知道B類是A的一個子類,而B和C彼此都知道(並且它們中的每一個都有另一個的私有成員),但是,箭頭和索引的含義是什麼? B類調用自己的c的op3?但是何時,爲什麼如何?
考慮以下圖: 溝通了解到圖
我想這些圖表轉換成Java代碼,但我覺得很難推測通信圖。我在網上搜索了很多東西,但找不到解釋它流動的東西(如何從字面上讀取它),只是「它的含義」。我知道B類是A的一個子類,而B和C彼此都知道(並且它們中的每一個都有另一個的私有成員),但是,箭頭和索引的含義是什麼? B類調用自己的c的op3?但是何時,爲什麼如何?
按照編號:
B
類的實例(然後成爲:B
):B
在:C
C
:B
一個新的實例調用該方法op3()
:C
調用op2()
在:B
:B
電話op1()
(從超A
)本身這個答案我喜歡除了事實B改變了它的名字一半。 –
@ChrisReynolds您需要將第一個句子作爲'B類'的實例來讀取,然後是'B:'。我會改變這一點。 –
Thomas,我認爲你的':A'實例應該被':B'實例替代。這裏只涉及兩個實例,當然你可以完美地調用在子類「B」的實例上定義在超類「A」上的操作:B' –
這不是Java的問題去閱讀你的教授的筆記 – gpasch
你也應該指出你的教授認爲,類圖中顯示的虛線箭頭不是UML。我假設他想使用依賴關係,但UML中的依賴關係不能是雙向的,而箭頭符號略有不同。它應該是一個開放的箭頭有點像這樣:'--->' –