Home > Informatik > Stufe Q1 > Referenzen > dynamische List

15.42 Quelltext-Analyse, Teil 1

Konstruktor, isEmpty() und hasAccess()

Hier der Quelltext des Konstruktors der Klasse List sowie der beiden sondierenden Methoden isEmpty und hasAccess:

    public List()
    {
        first = last = act = null;
    }
    
    /**
     * Die Anfrage liefert den Wert true, wenn die Liste keine Objekte enthält,
     * sonst liefert sie den Wert false.
     */
    public boolean isEmpty()
    {
       return (first == null);
    }
    
    /**
     * Die Anfrage liefert den Wert true, wenn es ein aktuelles Objekt gibt, sonst
     * liefert sie den Wert false.
     */
    public boolean hasAccess()
    {
       return (act != null);
    }
    
Konstruktor List()

Durch den Aufruf des Konstruktors, zum Beispiel

List l = new List();

wird ein neues List-Objekt erzeugt. Dieses List-Objekt hat drei Attribute, nämlich first, last und act. Das Attribut first zeigt immer auf das erste Element der Liste, last zeigt immer auf das letzte Element. Das Attribut act zeigt auf das aktuelle Element der Liste oder auf null, wenn kein solches aktuelles Element vorhanden ist.

Bei einem neuen List-Objekt zeigen alle drei Attribute auf den Wert null.

Besteht das List-Objekt aus genau einem Element, so zeigen first und last auf dieses Element. Das Attribut act kann auf dieses Element zeigen, falls es zum aktuellen Element "befördert" wurde.

zurück zum Quelltext...

Methode isEmpty()

Die Methode isEmpty ist fast selbsterklärend. Bei jeder nicht-leeren Liste zeigt first auf das erste Element, selbst dann, wenn die Liste nur aus einem einzigen Element besteht. Nur dann, wenn gar kein Element vorhanden ist, wenn die Liste also leer ist, zeigt first auf null. In diesem Fall ist die Bedingung first == null true, und dieses Ergebnis wird dann auch von der Methode isEmpty zurückgeliefert.

zurück zum Quelltext...

Methode hasAccess()

Wenn keines der Listen-Elemente das aktuelle Element ist, so hat act den Wert null. Ist jedoch ein aktuelles Element vorhanden, so ist die Bedingung act != null erfüllt, und die Methode liefert den Wert true zurück. Das bedeutet so viel wie: Es gibt ein aktuelles Element. Allerdings liefert die Methode keine Information darüber zurück, welches Listen-Element das aktuelle Element ist.