Kids' Programming Language
Inhalt

Sprachreferenz

Generische Objekte

Sammelbehälter

Häufig benötigt man mehrere Objekte der gleichen Klasse. Statt alle Objekte einzeln zu verwalten, kann man diese Objekte in eine Art Sammelbehälter ablegen. Solche Sammelbehälter sind z.B. Listen und Felder. In diesen Sammelbehältern lassen sich eine bestimmte Anzahl von Objekten hineinlegen und auch wieder herausnehmen. Diese Behälter können immer nur eine bestimmte Klasse von Objekten aufnehmen, so dass beim Erzeugen ("Generieren") eines Behälter die Klasse der Objekte angegeben werden muss. Man bezeichnet die Behälter deswegen als generische Objekte.

Listen

Soll eine Liste von Text-Objekten angelegt werden, so muss bei Erzeugen der Liste ein zusätzlicher Parameter 'Typ'  angegeben werden. Nach 'Typ' folgt ein Gleichheitszeichen und der Name einer Klasse:
 
Programm
ErsteListe=Liste(Typ=Text)
 
Achtung: Nach der Klasse folgt kein Klammerpaar '()', da hier kein Objekt erzeugt werden soll, sondern nur die Klasse mitgeteilt wird, die als so genannter "generischer Typ" verwendet wird. In diesem Fall ist der Generische Typ die Klasse 'Text'. Es lässt sich aber genauso gut eine Liste von Bild-Objekten erzeugen, indem man schreibt:
 
Programm
ZweiteListe=Liste(Typ=Bild)
 
Gibt man den Parameter 'Typ' nicht an, so wird standardmäßig eine Liste von Zahl-Objekten erzeugt.
 
Um einer Liste ein Objekt (am Listenende) hinzuzufügen, kann man die Methode 'fügeHinzu' benutzen. Der Parameter 'Wert' der Methode bestimmt das hinzuzufügende Objekt. Man beachte: Das Objekt muss von der in 'Typ' angegebenen Klasse erzeugt worden sein. Hier sind ein paar Beispiele:
 
Programm
% Eine Liste für Texte:
TextListe=Liste(Typ=Text)
fügeHinzu(Wert="Zahnbürste"):TextListe
fügeHinzu(Wert="Welt"):TextListe
% Eine andere Liste für Zahlen:
ZahlListe=Liste(Typ=Zahl)
fügeHinzu(Wert=42):ZahlListe
% Eine weitere Liste für Kreise:
KreisListe=Liste(Typ=Kreis)
fügeHinzu(Wert= Kreis(Farbe="gelb") ):KreisListe
 
Listen-Objekte haben einige weitere Methoden: Die Methode 'gibGröße' gibt z.B. die Anzahl der in der Liste enthaltenen Objekte als Rückgabewert zurück. Die Methode 'gib' gibt ein Objekt aus der Liste als Rückgabewert zurück, das aber in der Liste verbleibt. Um zu bestimmen welches Objekt aus der Liste zurückgegeben werden soll, muss der Parameter 'Index' angegeben werden. 'Index=1' steht für den ersten Eintrag in der Liste, 'Index=2' für den zweiten und so weiter. Im folgenden Beispiel werden drei Text-Objekte der Liste mit dem Namen 'Geschwister' hinzugefügt. Anschließend wird die Anzahl der in der Liste vorhanden Objekte und das Text-Objekt mit dem 'Index=2' ausgegeben:
 
Programm
Geschwister=Liste(Typ=Text)
fügeHinzu(Wert="Peter"):Geschwister
fügeHinzu(Wert="Anna"):Geschwister
fügeHinzu(Wert="Paul"):Geschwister
schreibe:"Ich habe " + gibGröße:Geschwister + " Geschwister."
schreibe:"Meine Schwester heißt " + gib(Index=2):Geschwister +"."
 
Listen sind sehr flexibel beim Hinzufügen und Entfernen von Objekten und besitzen viele weitere Methoden, die in der Klassenreferenz nachgeschlagen werden können.

Felder

Eine weitere Möglichkeit mehrere Objekte zu verwalten, besteht mit der Klasse 'Feld'. Ein wichtiger Unterschied zu Listen ist, dass beim Erzeugen eines Feldes die Anzahl der Plätze im Feld (d.h. die Länge des Feldes) angegeben werden muss. Die Plätze setzt man mit der Methode 'setze' unter Angabe des Indexes:
 
Programm
Geschwister=Feld(Typ=Text,Länge=3)
setze(Index=1,Wert="Peter"):Geschwister
setze(Index=2,Wert="Anna"):Geschwister
setze(Index=3,Wert="Paul"):Geschwister
schreibe:"Ich habe " + gibLänge:Geschwister + " Geschwister."
schreibe:"Meine Schwester heißt " + gib(Index=2):Geschwister +"."
 
Weitere Informationen finden sich in der Klassenreferenz. Listen und Felder sind besonders nützlich im Zusammenhang mit Programmstrukturen wie 'zähle...mache'.

Jetzt kostenlos herunterladen.
Diese Seite ausdrucken.
Diese Seite speichern.