Node: Unterschied zwischen den Versionen

Aus SibiWiki
Zur Navigation springen Zur Suche springen
(Die Seite wurde neu angelegt: „<code> /** * die Klasse Node dient dazu, um einzelne Knoten in einer Liste, einem Stack oder einem Queue zu speichern.* * die wichtigen Attribute sind: *…“)
 
 
(5 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt)
Zeile 1: Zeile 1:
<code>
[[Kategorie:Informatik]]
/**
[[Kategorie:Informatik-Abitur]]
  * die Klasse Node dient dazu, um einzelne Knoten in einer Liste, einem Stack oder einem Queue zu speichern.*
<font color='red'>'''Diese Seite entspricht dem Abi 17 (und folgenden)'''</font>
  * die wichtigen Attribute sind:  
 
  * value: das Objekt, das in dem Node gespeichert wird.
[[File:Klassendiagramm-Node.png|thumb|Klassendiagramm Node|430px]]
  * next: ein Verweis auf den nächsten Node.
 
  *
=Zweck=
  */
Die Klasse Node dient dazu, um einzelne Knoten in einer [[List|Liste]], einem [[Stack]] oder einem [[Queue]] zu speichern. Dazu hat jedes Node-Objekt zwei Attribute:
  public class Node {
* <code>content</code>: das Objekt, das in dem Node gespeichert wird.
       private Object value;
* <code>next</code>: ein Verweis auf den nächsten Node.
       private Node next;
Die Klasse <code>Node</code> ist parametrisiert, d.h. man kann bei der Erzeugung eines Nodes angeben, mit welchem Datentyp ein Node "gefüllt" werden soll.
 
=Implementierung=
  <code>public class Node<ContentType> {
       private ContentType value;
       private Node<ContentType> next;
        
        
       /**
       /**
       * erzeugt einen Node
       * erzeugt einen Node
       * @param value das Objekt, das in dem Node gespeichert werden soll.
       * @param pContent das Objekt vom Typ ContentType, das in dem Node gespeichert werden soll.
       */
       */
       public Node(Object value){
       public Node(ContentType pContent){
             this.value = value;
             content = pContent;
       }
       }
        
        
Zeile 23: Zeile 28:
       * @return
       * @return
       */
       */
       public Object getValue() {
       public ContentType getContent() {
             return value;
             return content;
       }
       }
        
        
       /**
       /**
       * veraendert das gespeicherte Objekt.
       * veraendert das gespeicherte Objekt.
       * @param value
       * @param pContent
       */
       */
       public void setValue(Object value) {
       public void setContent(ContentType pContent) {
             this.value = value;
             content = pContent;
       }
       }
        
        
Zeile 38: Zeile 43:
       * gibt einen Verweis auf den naechsten Knoten zurueck.
       * gibt einen Verweis auf den naechsten Knoten zurueck.
       */
       */
       public Node getNext() {
       public Node<ContentType> getNext() {
             return next;
             return next;
       }
       }
Zeile 44: Zeile 49:
       /**
       /**
       * setzt einen Verweis auf den naechsten Knoten.
       * setzt einen Verweis auf den naechsten Knoten.
       * @param next
       * @param pNext
       */
       */
       public void setNext(Node next) {
       public void setNext(Node<ContentType> pNext) {
             this.next = next;
             next = pNext;
       }
       }
  }
  }</code>
</code>

Aktuelle Version vom 23. Januar 2022, 18:09 Uhr

Diese Seite entspricht dem Abi 17 (und folgenden)

Klassendiagramm Node

Zweck

Die Klasse Node dient dazu, um einzelne Knoten in einer Liste, einem Stack oder einem Queue zu speichern. Dazu hat jedes Node-Objekt zwei Attribute:

  • content: das Objekt, das in dem Node gespeichert wird.
  • next: ein Verweis auf den nächsten Node.

Die Klasse Node ist parametrisiert, d.h. man kann bei der Erzeugung eines Nodes angeben, mit welchem Datentyp ein Node "gefüllt" werden soll.

Implementierung

public class Node<ContentType> {
     private ContentType value;
     private Node<ContentType> next;
     
     /**
      * erzeugt einen Node
      * @param pContent das Objekt vom Typ ContentType, das in dem Node gespeichert werden soll.
      */
     public Node(ContentType pContent){
           content = pContent;
     }
     
     /**
      * gibt das gespeicherte Objekt zurueck
      * @return
      */
     public ContentType getContent() {
           return content;
     }
     
     /**
      * veraendert das gespeicherte Objekt.
      * @param pContent
      */
     public void setContent(ContentType pContent) {
           content = pContent;
     }
     
     /**
      * gibt einen Verweis auf den naechsten Knoten zurueck.
      */
     public Node<ContentType> getNext() {
           return next;
     }
     
     /**
      * setzt einen Verweis auf den naechsten Knoten.
      * @param pNext
      */
     public void setNext(Node<ContentType> pNext) {
           next = pNext;
     }
}