Aufgabe 7.1

Disclaimer: Dieser Thread wurde aus dem alten Forum importiert. Daher werden eventuell nicht alle Formatierungen richtig angezeigt. Der ursprüngliche Thread beginnt im zweiten Post dieses Threads.

Aufgabe 7.1
Muss man bei einer Methode die geerbt aber wieder Überschrieben wurde die Methode nochmal in das UML-Diagramm der Unterklasse schreiben?


Section 3 :wink:


Danke John :smiley:

Noch eine Frage zum UML-Diagramm

Kindschaftsverhaeltnis(null,Person,Person)
ich finde niergends den Hinweis für null, das könnte ja jedes Object sein…
Soll das der Vater sein?
Sollen wir Object nehmen, weil nirgends steht, was das sein soll?


Was es sein kann, steht im Pflichtenheft - und da ist es ziemlich eindeutig…

Ich verstehe diese Frage nicht…

MainOutput Zeile2

Wo soll dieser John Doe her kommen?
Aus einer Datei die es gar nicht gibt?

Soll „laden“ immer einen John Dow erstellen?


Schon mal in die [m]Main.java[/m] geschaut, in der die Ausgabe erzeugt wird?


Stammbaum wird geladen, aus einer nicht existenten Datei…
Und beim speichern ausgegeben, da sollte er aber ja wohl noch leer sein, wenn nicht sogar ganz null.

In der MainOutput.txt steht aber:


Mangels einfacher Möglichkeiten, beliebige Stammbäume auf euren Rechnern zu speichern und wieder zu laden, sollen diese beiden Methoden einen „Demo-Stammbaum laden bzw. speichern“ (also einen neuen Stammbaum mit John Doe erzeugen resp. selbigen ausgeben) - ganz genau so, wie es der Main-Test bzw. sein Output eindeutig spezifizieren.


So etwas dachte ich mir, deswegen gibt meine Laden Methode auch einen entsprechenden Stammbaum zurück.

Die Ausgabe von “Main” ist auch identisch mit “MainOutput.txt” trotzdem bekomme ich von EST ein !. Könnte das mit den ganzen Sonderzeichen zusammenhängen?

Hat jemand das Programm schon erfolgreich abgegeben?


Sofern nur die Code-Schnippsel übernommen und keine eigenen Sonderzeichen verbaut wurden, dann hängt es damit sicher nicht zusammen, da alle Sonderzeichen als Unicode-Symbole in Strings stehen und damit ASCII-Code ergeben…
Da es bislang nur drei Abgaben mit „!“ gibt, erlaube ich mir zu verraten, dass ausnahmslos alle daher rühren, dass die Ausgabe eben NICHT mit der vorgegebenen übereinstimmt. Verlasst euch bei so vielen Sonderzeichen nicht aufs bloße Auge, sondern nutzt Tools zum Vergleich! Insbesondere Windows-Nutzern zeigt der normale Windows-Editor möglicherweise keine Zeilenumbrüche im „Musteroutput“ an (weil er die Linux-Umbrüche nicht als solche interpretiert!) => nehmt stattdessen Wordpad oder einen „moderneren“ Text-Editor!!

PS: Die vierte und letzte Abgabe beachtet meinen Hinweis nicht, der da lautet:


Java (in Eclipse) spukt statt der Unicode-Zeichen nur “?” aus aber ansonsten ist es das gleiche wie in “MainOutput.txt”
Hab beide in Notepad++ nebeneinander gehalten…


Was ist bei dir das Geburtsdatum von John Doe?

edit: Endlich habe ich einen grünen Haken. Wie erwartet war das Geburtsdatum falsch.


Ein Tutor hat gemeint, dass man die Codeschnipsel anpassen darf
Jetzt bin ich mir aber nicht ganz sicher (siehe Zitat)

Bsp:
for (Person p : paar) {//ist wahrscheinlich ein Array mit zwei einträgen gemeint paar[0] mit person1 und paar[1] mit person2 oder liege ich da falsch?
string += p != null ? „\n:\u2764:“ + p.toString() : „“;
}
wenn ich kein paar Array habe, sondern bspw. person1 und person2 als Objektattribute
darf ich dann den Codeschnipsel anpassen oder sollte ich das ganze auf ein paar-Array umbauen (und dann auch im UML-Gedingse)


Das ist ein schwieriger Fall, denn es gelten mehrere Regeln (die keineswegs widersprüchlich sind…):
1.) Blatt-00: „Die Schnittstellen der mit der Aufgabenstellung bereitgestellten Klassen dürfen nicht modifiziert werden; insbesondere dürfen keine Methoden oder Felder gelöscht oder umbenannt werden.“ <= ich würde die Schnippsel nicht verändern…
2.) Blatt-07: „Die erwartete Ausgabe können Sie mit der bereitgestellten vergleichen.“ <= ich würde sie verändern, solange die Ausgabe absolut identisch ist…
3.) EST/Blatt-00: Die Symbole zeigen an, ob die Abgabe mit/ohne Testfälle übersetzbar ist <= ich würde sie verändern, solange ich einen grünen Haken erhalte…

Hoffe, ich konnte alle Klarheiten beseitigen ;).

Edit wollte den Satz umbauen, weil er dann treffender ist:
Blatt-00 sollte hier lauten: „Die mit der Aufgabenstellung ‚bereitgestellten Schnittstellen‘ der nicht-bereitgestellten Klassen dürfen nicht modifiziert werden […]“


Gibt es einen Hinweis, wie Stammbaum.laden(String pfad) zu implementieren ist? :slight_smile:



Kann es sein dass in der main in Zeile 13 und Zeile 25 die falschen Namen angegeben sind? Müsste es nicht vielmehr:
Zeile 13:
Verliebt verliebt = new Verliebt(p1, p2);
Zeile 25:
Verlobt verlobt = new Verlobt(p1, p2, new Datum(11, 11, 2013));
heißen?
In Zeile 31 kommt ja dann auch wieder:
Verheiratet verheiratet = new Verheiratet(p1, p2, new Datum(19, 02, 2014));
Viele Grüße


Nein - und die Erklärung dafür, warum das richtig ist, steht ab Folie 8-78 (insbesondere 8-88).


Hallo, ich wollte mal fragen ob in das Klassendiagramm auch Getter und Setter kommen. In der Angabe steht ja “mit allen Methoden(auch Konstruktoren)”. Und wie ist die Regel bezüglich Getter/Setter und Konstruktoren im Alltagsgebrauch mit UML, weglassen oder der Vollständigkeit halber hinzufügen?