Firefighter22 Geschrieben 10. November 2019 Geschrieben 10. November 2019 Hallo zusammen, ich bräuchte mal Hilfe bzw. ich hätte eine Frage zu einem UML Sequenzdiagramm. In dem letzten Bild kann man die Lösung ansehen. Ich stehe aber völlig auf dem Schlauch warum die so erstellt wurde. Kann mir das jemand erklären? Zitieren
Whiz-zarD Geschrieben 10. November 2019 Geschrieben 10. November 2019 Was verstehst du denn dort nicht? Das ist eine Schleife, die über die Fillialen läuft. Innerhalb dieser Schleife gibt es eine weitere Schleife, die alle Mitarbeiter durchläuft und bei allen Mitarbeitern, die nicht Fillialleiter sind, wird das Gehalt erhöht. Zitieren
Firefighter22 Geschrieben 10. November 2019 Autor Geschrieben 10. November 2019 Was da mit size gemacht wird? Also ich verstehe das so das er in dem ersten Abschnitt die Liste Filiale sich die Größe angeben lässt und diese i nennt oder? Zitieren
Whiz-zarD Geschrieben 10. November 2019 Geschrieben 10. November 2019 Ja, Size() holt die Größe der Liste, um damit die Austrittsbedingung der for-schleife zu definieren. Heutzutage würde man das aber mit einer foreach-Schleife lösen. Zitieren
Firefighter22 Geschrieben 10. November 2019 Autor Geschrieben 10. November 2019 Was wird mit dem get(k) gemacht? Wie würde das ganze dann mit einer foreach aussehen? Zitieren
Whiz-zarD Geschrieben 10. November 2019 Geschrieben 10. November 2019 vor 3 Minuten schrieb ChrisG123: Was wird mit dem get(k) gemacht? Wenn ich mir das Diagramm anschaue, kommt es mir sowieso an dieser Stelle falsch vor. Ich vermute mal, dass get(k) einfach nur die Filiale aus der Liste holen soll aber nach dem Diagramm erhöht die get()-Methode die Gehälter. Also anstatt: public void erhoeheGehaltMitarbeiter(double x) { var i = meineFilialen.Size(); for(var k = 0; k <= i; k++) { var filiale = meineFilialen.get(k); var meineMitarbeiter = filiale.getMeineMitarbeiter(); var z = meineMitarbeiter.Size(); for(var j = 0; j <= z - 1; j++) { // ... } } } steht dort einfach nur: public void erhoeheGehaltMitarbeiter(double x) { var i = meineFilialen.Size(); for(var k = 0; k <= i; k++) { meineFilialen.get(k); } } Und die get()-Methode erhöht dann das Gehalt, was aber nicht klappen kann, da die Methode x gar nicht kennt. get() müsste also einen Rückgabewert zur Zentrale zurückgeben. Zitieren
Firefighter22 Geschrieben 11. November 2019 Autor Geschrieben 11. November 2019 Gibt es eigentlich einen groben Ablauf wie man aus dem Sequenzdiagramm eine Methode wie jetzt erhöheGehalt schreibt? Zitieren
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.