05.08.2013 Aufrufe

Cornelia Heinisch, Frank Müller-Hofmann, Joachim Goll ... - HSR-Wiki

Cornelia Heinisch, Frank Müller-Hofmann, Joachim Goll ... - HSR-Wiki

Cornelia Heinisch, Frank Müller-Hofmann, Joachim Goll ... - HSR-Wiki

MEHR ANZEIGEN
WENIGER ANZEIGEN

Erfolgreiche ePaper selbst erstellen

Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.

Collections 721<br />

}<br />

}<br />

liste.add (1);<br />

liste.add (2);<br />

liste.add (3);<br />

liste.add (4);<br />

liste.add (5);<br />

System.out.println ("Anzahl=" + liste.size());<br />

System.out.println (liste);<br />

liste.remove (5);<br />

liste.remove (2);<br />

liste.remove (3);<br />

System.out.println ("Anzahl=" + liste.size());<br />

System.out.println (liste);<br />

Schreiben Sie dieses Programm so um, dass anstelle der eigenen verketteten Liste<br />

die Klasse LinkedList aus der Java API verwendet wird. Beachten Sie dabei, dass<br />

die Methode remove() der Klasse LinkedList überladen ist und durch Autoboxing<br />

Probleme auftreten können.<br />

Aufgabe 18.3: Maps<br />

In einer Map sollen Adressen von Studenten gespeichert werden. Als Schlüssel zum<br />

Auffinden eines Studenten soll dessen Matrikelnummer verwendet werden. Schreiben<br />

Sie eine Klasse StudentenAdresse, welche die Adressen der Studenten<br />

enthält. Schreiben Sie weiterhin eine Klasse StudentenVerwaltung, welche Referenzen<br />

auf Objekte vom Typ StudentenAdresse in einem Objekt vom Typ Hash-<br />

Map ablegt und wieder ausliest. Die Matrikelnummer – also der Schlüssel –<br />

soll durch den Datentyp Integer repräsentiert werden.<br />

Um die Klasse HashMap austauschbar zu machen, soll immer gegen die<br />

Schnittstelle Map programmiert werden. Schreiben Sie eine Methode test(), in der<br />

3 Studenten in die Map eingetragen werden, und geben Sie eine der Adressen<br />

wieder aus.<br />

Aufgabe 18.4: Wildcards und Bounded-Wildcards<br />

Schreiben Sie eine abstrakte Klasse Getriebe. Diese soll die abstrakten Methoden<br />

hochschalten() und herunterschalten() besitzen. Schreiben Sie zwei weitere<br />

Klassen AutomatikGetriebe und ManuellesGetriebe, die von Getriebe<br />

abgeleitet sind und diese Methoden so implementieren, dass jeweils eine Meldung<br />

ausgegeben wird.<br />

Schreiben Sie eine Klasse Pruefstand mit einer Methode testAll(). Diese soll<br />

Collections von Getrieben akzeptieren, in denen beliebige Mischungen von automatischen<br />

und manuellen Getrieben vorkommen. Innerhalb der Methode sollen die<br />

Methoden zum Hoch- und Herunterschalten jeweils einmal aufgerufen werden.<br />

Erstellen Sie noch zwei Klassen ManuellesGetriebeFertigung und AutomatischesGetriebeFertigung,<br />

die jeweils eine Methode fertigePalette()<br />

besitzen, die eine typisierte Collection mit 5 Getrieben des jeweiligen Typs herstellen.

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!