Wie UML-Diagramm weiter ausfüllen?
Hallo, ich habe eine Frage und zwar, weiß jemand wie ich das Folgende UML-Diagramm erweitern könnte, mit dem Inhalt aus dem Text des 1. Bildes?
Wäre es schlau eine weitere abstrakte Klasse "Ladegüter" (mit dem Attribut Masse:int und gefährlich:boolen) zu erstellen und daraus Teddys, Bomben und Fässer zu erstellen? Sollten die Attribute privat oder public sein? public oder, damit die einzelen Ladegüter darauf zugreifen können oder?
Sollte noch ein boolen Ladeflächevoll zu den Attributen der LKWs hinzugefügt werden?
Vielen lieben dank im Voraus schonmal, ich mag das Thema irgendwie garnicht und bin mir etwas unsicher, was ich genau machen soll.
LG
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.