所以我正在學習如何在UML中建模。我目前正在學習關聯。我想我知道他們是什麼,但需要一些澄清。UML中的雙向和單向,他們的對象是否與其他類交互?
1)由於關聯是2個(或更多?)類之間的鏈接,因爲對象通常與其他類交互,因此認爲類的對象將進行交互是正確的嗎?
2)在雙向關聯中,兩個類都知道彼此之間的關係。例如一班飛行和一班飛機。航班的角色名稱爲'assignedFlights',重複值爲0 ... *。平面的角色名稱爲'associatedFlight',重複值爲0..1。是否正確地說對象的Flight可以與Plane類有0或1的關聯,並且Plane對象可以有0與Flight類的無限關聯?並且它是什麼意思是'關聯'與一個類?他們的意思是: E.g.在飛機艙中,有一種叫做plane();
的方法,在飛行艙中有一種叫做flight();
的方法。
class Flight(){
Plane planeObject = new Plane();
planeObject.plane();
// Only one or zero is allowed as a flight instance can only be associated with 1 or 0 planes.
}
class Plane{
Flight flightObject = new Flight();
Flight flightObject2 = new Flight();
Flight flightObjet3 = new Flight();
flightObject.flight();
flightObject2.flight();
flightObject3.flight();
//And so one as a plane can have 0 to infinite associations
}
3)同一類型的問題適用於單向關聯。
有人可以向我解釋在外行和術語,因爲我明白在Java中。
對於q#1,而不是靜態交互?通常它是對象,但是sorta依賴於uml圖和類和設計。真的,這是你的設計,所以是靜態的呼叫,例如一個util類將被表示爲這樣。對於q#2和#3,您正在建模對象之間的交互,因此Plane對象(又名實例)與0個或更多個Flight對象/實例相關聯,並且Flight具有與Plane對象/實例的可選關聯。 – Taylor