0 Daumen
74 Aufrufe

Frage:

Hallo, ich soll hier 4 Sachen finden, die semantisch nicht sinnvoll modelliert sind.

Ich dachte mir folgende Sachen:

1. Die Methode layEgg(): Egg muss in die Klasse FemaleGoose verschoben werden, da momentan auch männliche Gänse Eier legen können, was keinen Sinn macht.

2. Zwischen der Klasse Farm und Room sollte eine Komposition und keine Aggregation sein, denn wenn die Farm zerstört wird, werden auch ihre Räume zerstört. Momentan würden die Räume bestehen bleiben.


Weiß jemand, was die anderen 2 Sachen sind, die nicht sinnvoll modelliert sind? Vllt dass die Klasse Snake kein Animal ist?

Wäre dankbar für Hilfe :)


modell.PNG

von

1 Antwort

0 Daumen
 
Beste Antwort

Biologisch betrachtet sind Bauern und Schlangen auch Tiere.

Wie kommt der Fuchs an die Eier, die er so gerne isst?

von 4,2 k

Stimmt, da fehlt ein Pfeil, dass Füchse auch Eier stehlen können. :D

Und das andere macht auch Sinn. Danke dir. :)

Ich habe noch eine Frage, die sich aufs Klassendiagramm bezieht. Vllt kannst du mir da auch helfen. Und zwar habe ich folgenden Java Code zu den drei Klassen Animal, Goose und Fox gegeben:modell2.PNG

Hier soll man 3 Punkte im Java Code finden, die der Modellierung im Klassendiagramm widersprechen. Und wenn das gezeigte Diagramm an einer Stelle gar nicht in Java umgesetzt werden kann, soll man ein Workaround angeben.

Ich dachte mir folgende Punkte:

1.) Klasse Goose: die Methode buildNest() ist im Klassendiagramm mit # versehen, müsste also protected sein, das Stichwort fehlt aber im Java Code.
2.) Klasse Fox: Diese Klasse bekommt nach Diagramm ja eine gewisse Anzahl an Gänsen übergeben (die gestohlen wurden), die in irgendeiner Datenstruktur gespeichert sein müssten. Auch das fehlt im Java Code völlig.
3.) Beim dritten bin ich mir nicht sicher, aber ich denke, es hat mit der Klasse Animal zu tun und zwar wie dort einem Tier eine ID zugewiesen wird. Ich denke mal, dass man das so nicht machen darf.
Stimmt das soweit und hast du eine Ahnung, wie das mit dem dritten Punkt geht?

Ein anderes Problem?

Stell deine Frage

Ähnliche Fragen

0 Daumen
1 Antwort
0 Daumen
1 Antwort

Willkommen bei der Stacklounge! Stell deine Frage einfach und kostenlos

x
Made by a lovely community