Name - SSW

Werbung
Übung Grundlagen der Programmierung
WS 2003/04
Übung 08 (Objektorientierung und Dynamische
Datenstrukturen)
Auszufüllen für den Autor der Übung:
Name:..............................................................
Matrikelnummer:.............................................. Abgabetermin:
09.12.2003
Punkte:..........
Übung 08
___________________________________________________________________
Auszufüllen für die Review Teilnehmer:
Name:..............................................................
Matrikelnummer:...................................
Name:..............................................................
Matrikelnummer:...................................
Name:..............................................................
Matrikelnummer:...................................
Name:..............................................................
Matrikelnummer:...................................
Ergebnis des Reviews:
Punkte:......
Übung Grundlagen der Programmierung
WS 2003/04
Aufgabe 1: Personenliste (18 Punkte)
Erstellen Sie eine Klasse PersonNode welche einen Knoten mit Personeninformationen
darstellt. Dabei sollen Daten wie Vor/Nachname (String), Geburtsdatum (int,int,int) und
Adresse (String) gespeichert werden können. Die Klasse PersonNode soll auch eine Methode
String toString() enthalten, welche die Personeninformationen als Zeichenkette zurückliefert.
(6 Punkte)
Benutzen Sie dann diese Klasse PersonNode um eine Klasse PersonList zu implementieren
welche eine Liste von Personen Knoten verwalten kann. Dazu sind in der Klasse PersonList
folgende Methoden zu implementieren: (12 Punkte)
•
•
add(PersonNode pn): Fügt einen neuen Personen-Knoten am Beginn der Liste ein.
Remove(String fn, String ln): Löscht den ersten Knoten mit gegeben Vornamen und
Nachnamen aus der Liste.
•
•
PersonNode search(String fn, String ln): Sucht in der Liste nach dem gegebenen
Vornamen und Nachnamen und liefert den Knoten zurück, oder null wenn die Person
nicht gefunden wurden.
String toString(): Liefert alle Informationen der Personen in der Liste als String
zurück.
Beispiel:
PersonNode wb = new PersonNode("Wolfgang", "Beer", 3, 8, 1977, "Address XYZ");
PersonNode mm = new PersonNode("Max", "Muster", 2, 9, 1980, "Hauptstr 2, Linz");
Out.println(wb);
Out.println("Ausgabe der Personenliste:");
PersonList pl = new PersonList();
pl.add(wb);
pl.add(mm);
Out.println(pl);
Out.println("Suche nach Person Wolfgang Beer:");
Out.println(pl.search("Wolfgang", "Beer"));
Out.println("Loesche Person Wolfgang Beer aus der Liste:");
pl.remove("Wolfgang", "Beer");
Out.println(pl);
Übung Grundlagen der Programmierung
WS 2003/04
Ausgabe:
-Person:
Wolfgang Beer
born:3.8.1977
address: Address XYZ
Ausgabe der Personenliste:
-PersonList:
-Person:
Max Muster
born:2.9.1980
address: Hauptstr 2, Linz
-Person:
Wolfgang Beer
born:3.8.1977
address: Address XYZ
Suche nach Person Wolfgang Beer:
-Person:
Wolfgang Beer
born:3.8.1977
address: Address XYZ
Loesche Person Wolfgang Beer aus der Liste:
-PersonList:
-Person:
Max Muster
born:2.9.1980
address: Hauptstr 2, Linz
Statisch oder dynamisch? (3 + 3 Punkte)
•
Geben Sie ausführlich an worin der Unterschied zwischen statischen (Klassenfeldern)
und dynamischen Feldern (Objektfeldern) besteht.
•
•
•
•
Wann werden die Felder angelegt, wann freigegeben?
Wie greift man darauf zu?
Wann braucht man statische bzw. wann dynamische Felder?
Geben Sie ausführlich an worin der Unterschied zwischen statischen
(Klassenmethoden) und dynamischen Methoden (Objektmethoden) besteht?
•
•
•
Wann stehen die Methoden zur Verfügung?
Wie greift man darauf zu?
Wann braucht man statische bzw. wann dynamische Methoden?
Herunterladen