Motivation und Grundlagen
Was sind Collections?
Collections …
- … dienen der Verwaltung von Mengen von Objekten („Collection“ = „Sammlung“)
- … verwalten eine Reihe von Objekten (die Elemente der Collection) als ein Objekt
- … sind im Gegensatz zu Arrays dynamisch
- … besitzen viele hilfreiche Methoden
- … stellen einen der nützlichsten Teil der Klassenbibliothek dar
Bisher ist die einzige Methode, die wir kennen, um Objekte zu sammeln und Mengen von Objekten zu verwalten das Array. Da Arrays in Java aber nicht dynamisch sind, d. h. bei der Erzeugung einmal eine feste Größe bekommen, die danach nicht mehr geändert werden kann, ist die Verwendung von Arrays relativ umständlich und fehleranfällig. Aus diesem Grund gibt es in der Java-Klassenbibliothek eine ganze Reihe von Klassen, die als sehr nützlicher Ersatz von Arrays genutzt werden können. Die Collections sind so nützlich, dass in der professionellen Java-Entwicklung Arrays nur selten zum Einsatz kommen, wenn sie besondere Vorteile gegenüber Collections haben, z. B. eine höhere Geschwindigkeit.
Die Collection-Hierarchie
Das Diagramm zeigt einen Überblick über alle Interfaces und Klassen aus dem sogenannten Collection-API. Die Zusammenhänge und Aufgaben der einzelnen Klassen werden wir im Folgenden schrittweise beleuchten.
Wie man sieht, gibt es zwei unterschiedliche Hierarchien: die von Collection
abgeleiteten Interfaces (und Klassen) und die von Map
abgeleiteten.