Liebe FIAE, anbei die Lösungen des ersten Tests:
Aufgabe 1:
Richtig sind die Aussagen a, c, d;
(2012-10-08) Ich muss mich korrigieren:
Richtig sind die Aussagen a, d;
Aufgabe 2:
Alle vom mir gefundenen Fehler im UML-Diagramm
Person:
1. Den Namen der Person als statisches Attribut zu benutzen macht keinen Sinn.
2. gebDatum sollte nicht öffentlich sein.
3. Die Methode GetGroesse() sollte öffentlich sein.
4. GetGebDatum() sollte einen Rückgabetyp DateTime haben aber kein Argument.
5. SetName() benötigt ein Argument aber keinen Rückgabetyp
Abgeordneter:
6. Abgeordneter ist kein Interface, die Vererbungslinie sollte durchgezogen sein.
(2012-10-8) Korrektur Abgeordneter erbt nicht vom Interface Person,
die Vererbungslinie sollte durchgezogen sein.
Wahlbezirk:
7. Ein Wahlbezirk ist kein Abgeordneter. Die Vererbungsbeziehung ist falsch.
8. Das Attribut name sollte nicht public sein.
9. SetName() sollte ein Argument vom Typ String haben, keinen Rückgabetyp.
10. Die Methode GetErgebnis() sollte public sein.
Aufgabe 3:
Der Fehler in der Klassendefinition entsteht durch die abstrakte Methode Tagespreis(). Eine Klasse mit einer abstrakten Methode muss mit dem Schlüsselwort abstact gekennzeichnet sein.
Aufgabe 4:
a)
Der Accessor stellt eine Schnittstelle für den Zugriff auf das Attribut dar. Damit kann die Funktion der Klasse verändert werden, ohne dass andere Klassen verändert werden müssen, die über den Accessor auf das Attribut zugreifen.
Seiteneffekte können sich ebenso schädlich auswirken wie bei einem direkten Zugriff auf das Attribut.
b)
Die Schnittstelle für den Zugriff auf das Attribut ist vorhanden.
Da der Wert des Attributs zwar ausgelesen werden kann, aber nicht verändert werden kann, gibt es einen umfassenden Schutz gegen Seiteneffekte.
c)
Ja.
Aufgabe 5:
Die Datei lege ich in der DropBox unter Test1, TestPerson ab.
Keine Kommentare:
Kommentar veröffentlichen