2016-04-22 13 views
1

Ich habe drei Klassen: A, B und C. A hat zwei Arrays, eines von B und eines von C.Klassendiagramm: Wie stelle ich eine Relation dar, die von einem anderen Objekt abhängt?

Jeder C hat einen Index, der eine Beziehung zu einem B innerhalb seiner Eltern erstellt. Wenn ich das B Array ersetze, beziehen sich alle C jetzt auf eine andere B.

Wie kann ich in einem UML-Klassendiagramm ausdrücken: die Relation C ->B die eine Funktion von A ist?

EDIT: das ich habe:

asd1

Und ich möchte etwas wie folgt aus:

asd2

(? Vielleicht ist dies vernünftig Denken ...)

+0

Ich folge dir nicht mit dem Substitutionsteil, aber sonst biete ich dir eine Antwort an. –

+0

Jedes 'C' hat nur einen Index' i' und verweist auf 'A.array_of_b [i]'. Jetzt können Sie 'A.array_of_b = something_else', und jetzt bezieht sich jeder' C' auf 'something_else [i]'. – rogi

+0

Ich verstehe. Ungewöhnlich (FORTRAN-like), um es anstelle eines Objekts zu verwenden. Das macht meine Antwort ungültig. –

Antwort

1

Grundsätzlich würde Ihr Modell so aussehen:

enter image description here

Sie können von C über die öffentliche b Eigenschaft A navigieren. Sie können die Array-Multiplizitäten von A bei Bedarf genauer spezifizieren.

Anstatt einen Index verwendet, würde ich einen Objektverweis wie folgt begünstigen:

enter image description here

Die Beziehung zwischen C und B ein Verband ist. Der kleine Punkt in der Nähe von C sagt, dass C diese Assoziation besitzt. Aber ich weiß natürlich nicht die Absicht Ihres Designs.

+0

Was ist diese Art von Beziehung zwischen B und C genannt? – rogi

+0

siehe meine zusätzliche Erklärung in der Antwort –