16 Stimmen

UML : Interne Klasse in einem Klassendiagramm

Lässt sich in einem Klassendiagramm angeben, dass eine Klasse eine interne Klasse einer anderen Klasse ist?

Oder handelt es sich um eine reine Umsetzungsentscheidung?

11voto

chimp Punkte 1793

Erwägen Sie die Verwendung einer Verschachtelungsbeziehung (eine Linie mit einem "+" in einem Kreis am übergeordneten Ende).

7voto

Ray Hayes Punkte 14625

Da die UML nicht direkt implementierungsspezifisch sein soll, würde ich eine Namenskonvention verwenden, wie z. B:

OuterClass vs OuterClass::InnerClass

Ich könnte mir vorstellen, dass verschiedene Tools unterschiedliche Techniken verwenden, wenn Sie ein Reverse-Engineering oder eine Codegenerierung in/aus UML anstreben (sofern sie dies überhaupt unterstützen).

Ein kurzer Test mit Reverse Engineering unter Verwendung von Enterprise Architect (EA v7) bestätigt, dass sie die oben genannten InnerClass::OuterClass Syntax bei der Verarbeitung von C# mit einer öffentlichen inneren Klasse.

1voto

S.Lott Punkte 371691

Für diese Art von Dingen gibt es separate Diagramme, die die interne Struktur oder Verarbeitung einer Klasse zeigen.

In der Regel handelt es sich bei diesen zusätzlichen Diagrammen um Aktivitätsdiagramme zur Darstellung der Verarbeitung. Manchmal eines pro Methode. Möglicherweise haben Sie auch ein internes Sequenzdiagramm, das die API-Interaktionen zeigt.

Es gibt keinen Grund, warum Sie nicht ein zusätzliches Klassendiagramm haben können, um die interne Struktur einer Klasse zu zeigen.

0voto

chimp Punkte 1793

Oder Sie können die innere Klasse vollständig von der äußeren Klasse umschlossen darstellen, ein Rechteck in einem anderen.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X