Titel | Inhalt | Suchen | Index | DOC | Handbuch der Java-Programmierung, 3. Auflage
<< | < | > | >> | API | Kapitel 14 - Collections I

## 14.1 Grundlagen und Konzepte

- 14.1 Grundlagen und Konzepte

Als Collections bezeichnet man Datenstrukturen, die dazu dienen, Mengen von Daten aufzunehmen und zu verarbeiten. Die Daten werden gekapselt abgelegt, und der Zugriff ist nur mit Hilfe vorgegebener Methoden möglich. Typische Collections sind Stacks, Queues, Deques, Priority Queues, Listen und Trees. Collections gibt es in großer Anzahl und diversen Implementierungsvarianten; jeder angehende Informatiker kann ein Lied davon singen.

Man könnte sagen, daß Collections für Datenstrukturen so etwas sind wie Schleifenkonstrukte für Anweisungen. So wie Schleifen die Wiederholbarkeit und Wiederverwendbarkeit von Code ermöglichen, erlauben Collections die Zusammenfassung und repetitive Bearbeitung von einzelnen Datenelementen. Tatsächlich werden Collections sehr oft in Zusammenhang mit Schleifen verwendet, insbesondere, wenn das Programm von seiner Grundstruktur her nicht Einzel-, sondern Mengendaten verarbeitet.

Ihre Hauptrolle besteht dann darin, Elementardaten zu speichern und einen der Bearbeitung angemessenen Zugriff darauf zu ermöglichen. Darüber hinaus können sie ganz neue Sichten auf die Daten definieren. Eine Hashtable beispielsweise stellt Daten paarweise zusammen und ermöglicht so die Definition einer Referenzbeziehung, die ohne ihre Hilfe nur schwer herzustellen wäre.

Einfache Programmiersprachen bieten Collections meist nur in Form von Arrays. In Java und anderen objektorientierten Sprachen gibt es dagegen eine ganze Reihe unterschiedlicher Collections mit einem viel breiter gefächerten Aufgabenspektrum.

Java kennt zwei unterschiedliche Collection-APIs. Während beider Funktionalität sich beträchtlich überschneidet, weisen ihre Schnittstellen teilweise recht große Unterschiede auf. Einerseits gibt es seit dem JDK 1.0 die "traditionellen" Collections mit den Klassen `Vector`, `Stack`, `Dictionary`, `Hashtable` und `BitSet`. Andererseits wurde mit dem JDK 1.2 ein neues Collection-API eingeführt und parallel zu den vorhandenen Klassen plaziert. Wir werden uns in diesem Kapitel mit den traditionellen Klassen beschäftigen und in Kapitel 15 auf die Neuerungen des JDK 1.2 eingehen. Dann werden wir auch einige der Beweggründe beleuchten, die zur Einführung der neuen Klassen geführt haben.

Titel | Inhalt | Suchen | Index | DOC | Handbuch der Java-Programmierung, 3. Auflage, Addison Wesley, Version 3.0
<< | < | > | >> | API | © 1998-2002 Guido Krüger, http://www.javabuch.de