Klassendokumentation der generischen Klasse List

Biologie

02. Sep '19

27 Aufrufe

Das Zentralabitur NRW gibt als die zu benutzenden linearen, dynamischen Datenstrukturen die Klassen Queue (Schlange), Stack (Stapel) und List (Lineare Liste) vor. Die zugehörigen Methoden der Klasse List werden im Folgenden als Klassendokumentation zusammengefasst.

Mit der Liste lassen sich beliebig viele Objekte verwalten, die linear, also “hintereinander” angeordnet sind. Der Zugriff erfolgt dabei über die Auswahl eines beliebigen aktuellen Objekts, das ausgelesen, ausgetauscht, verändert oder entfernt werden kann. Wenn die Liste zum Beispiel leer ist oder sich das aktuelle Objekt der Liste am Ende befindet und entfernt wird, kann es auch vorkommen, dass (temporär) kein Objekt als aktuell markiert ist.

Eine neue, leere lineare Liste kann mit dem Konstruktor List() erzeugt werden. Für ContentType muss hier die Klasse der zu verwaltenden Objekte eingesetzt werden, für primitive Datentypen müssen die entsprechenden Wrapper-Klassen benutzt werden. Die Anfrage boolean isEmpty() prüft, ob die List (noch) leer ist und gibt das Ergebnis als Wahrheitswert zurück. Bei boolean hasAccess() handelt es sich ebenfalls um eine Anfrage, die als boolean zurückgibt, ob überhaupt ein aktuelles Objekt existiert. Mit dem Auftrag void next() wird das dem aktuellen Objekt nachfolgende Objekt zum neuen aktuellen Objekt. Die Liste darf allerdings nicht leer sein, es muss überhaupt ein aktuelles Objekt geben und dieses darf nicht am Ende der Liste stehen, ansonsten gibt es nach dem Ausführen der Methode kein aktuelles Objekt. Die Aufträge void toFirst() und void toLast() markieren das erste bzw. letzte Objekt der Liste als aktuell.

Die Anfrage ContentType getContent() gibt das aktuelle Objekt als Rückgabewert aus. Mit dem Auftrag void setContent(ContentType pContent) wird das aktuelle Objekt - falls es eines gibt - durch das als Parameter übergebene neue Objekt überschrieben. Der Auftrag void append(Object pContent) hängt wiederum ein neues Objekt, das als Parameter der Methode übergeben wird, hinten an die Liste an, wobei das aktuelle Objekt unverändert bleibt. Mit void insert(Object pContent) wird das neue Objekt dagegen vor dem aktuellen Objekt eingefügt. Ist kein aktuelles Objekt vorhanden und die Liste leer, wird das Objekt trotzdem eingefügt, ist bereits mindestens ein Objekt vorhanden bleibt die Liste in diesem Fall unverändert. Der Auftrag void concat(List pList) hängt eine als Parameter übergebene Liste hinten an die bestehende Liste an; aus pList werden dabei die Objekte entfernt und die Liste wird somit leer. Der Auftrag void remove() entfernt schließlich das aktuelle Objekt aus der Liste und das nachfolgende Objekt wird zum aktuellen Objekt. Befindet sich das aktuelle Objekt am Ende der Liste, gibt es nach dem Ausführen kein neues aktuelles Objekt.

Quelle: Klassendokumentation des Landes NRW, zu finden im Buch Informatik 2, S. 378-380 oder online unter https://www.standardsicherung.schulministerium.nrw.de/cms/zentralabitur-wbk/faecher/getfile.php?file=2149, S. 10-13 (Abruf am 01.05.2019)

List

Lineare Liste

Klassendokumentation

Datenstruktur

Methoden

Informatik

Abitur

NRW

generisch


Unzufrieden?

Wenn dir ein Fehler aufgefallen ist oder du glaubst, dass die gezeigten Inhalten unangemessen sind oder gegen Rechte dritter verstoßen schreibe uns eine E-Mail, in der du deine Bedenken erläuterst. Wir bearbeiten solche Anträge schnellstmöglich.

E-Mail schreiben