Wie UML-Diagramm weiter ausfüllen?

1 Antwort

Wäre es schlau eine weitere abstrakte Klasse "Ladegüter" (mit dem Attribut Masse:int und gefährlich:boolen) zu erstellen (...)

Ja, mit nur zwei Einwänden:

  • Der Klassenname sollte im Singular formuliert werden (Ladegut), denn sie bildet nur ein Objekt ab. Wenn jemand mehrere Ladegüter benötigt, kann er sich dafür ein Array o.ä. anlegen.
  • Für die Masse würde ich eine Fließkommazahl verwenden.
Sollten die Attribute privat oder public sein?

Im Regelfall privat. Es gilt das Data-Hiding-Prinzip. Für den Zugriff von außen gibt es Getter-/Setter-Methoden (die in einem UML-Diagramm normalerweise nicht explizit aufgeführt werden).

In dem Fall aus der Aufgabe wäre es sinnvoll, den bereits feststehenden Attributen Standardwerte zu geben. Für dynamisch setzbare Attribute könnte man eine Konstruktorüberladung (mit entsprechendem Parameter) zur Verfügung stellen.

Außerdem könnten die Attribute als Konstanten gekennzeichnet werden, da sie doch nur einmal gesetzt werden.

Sollte noch ein boolen Ladeflächevoll zu den Attributen der LKWs hinzugefügt werden?

Das ist nicht notwendig. Es gibt maximal ein Ladegut, also reicht eine einfache Referenz. Ein Array (o.ä.) wäre nur notwendig, wenn mehr als ein Ladegut gesichert werden sollte. Die maximale Kapazität könnte man in dem Fall fix setzen. Ein extra Attribut ist auch dann nicht unbedingt nötig.