Node: Unterschied zwischen den Versionen
Zur Navigation springen
Zur Suche springen
(4 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt) | |||
Zeile 1: | Zeile 1: | ||
[[Kategorie:Informatik]] | [[Kategorie:Informatik]] | ||
[[Kategorie:Informatik-Abitur]] | [[Kategorie:Informatik-Abitur]] | ||
<font color='red'>'''Diese Seite entspricht dem Abi 17 (und folgenden)'''</font> | |||
[[File:Klassendiagramm-Node.png|thumb|Klassendiagramm Node|430px]] | |||
=Zweck= | =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: | 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: | ||
* <code> | * <code>content</code>: das Objekt, das in dem Node gespeichert wird. | ||
* <code>next</code>: ein Verweis auf den nächsten Node. | * <code>next</code>: ein Verweis auf den nächsten Node. | ||
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= | =Implementierung= | ||
<code> | <code>public class Node<ContentType> { | ||
private ContentType value; | |||
private | private Node<ContentType> next; | ||
private Node next; | |||
/** | /** | ||
* erzeugt einen Node | * erzeugt einen Node | ||
* @param | * @param pContent das Objekt vom Typ ContentType, das in dem Node gespeichert werden soll. | ||
*/ | */ | ||
public Node( | public Node(ContentType pContent){ | ||
content = pContent; | |||
} | } | ||
Zeile 26: | Zeile 28: | ||
* @return | * @return | ||
*/ | */ | ||
public | public ContentType getContent() { | ||
return | return content; | ||
} | } | ||
/** | /** | ||
* veraendert das gespeicherte Objekt. | * veraendert das gespeicherte Objekt. | ||
* @param | * @param pContent | ||
*/ | */ | ||
public void | public void setContent(ContentType pContent) { | ||
content = pContent; | |||
} | } | ||
Zeile 41: | 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 47: | Zeile 49: | ||
/** | /** | ||
* setzt einen Verweis auf den naechsten Knoten. | * setzt einen Verweis auf den naechsten Knoten. | ||
* @param | * @param pNext | ||
*/ | */ | ||
public void setNext(Node | public void setNext(Node<ContentType> pNext) { | ||
next = pNext; | |||
} | } | ||
} | }</code> | ||
</code> |
Aktuelle Version vom 23. Januar 2022, 18:09 Uhr
Diese Seite entspricht dem Abi 17 (und folgenden)
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;
}
}