create_super()¶
FUNKTION¶
protected void create_super();
DEFINIERT IN¶
allen Standardobjekten
ARGUMENTE¶
keine
BESCHREIBUNG¶
Diese Funktion wird immer dann aufgerufen, wenn ein Objekt implizit durch
ein 'inherit' in einem erbenden Objekte geladen wird.
Normalweise muss man dieses so geladene Objekte nicht konfigurieren, weil
nur das Programm dieses Objektes fuer die erbenden Objekte interessant
ist, nicht seine Daten.
Was hier aber z.B. sinnvoll ist, ist das Abschalten des Resets, denn ein
Objekt, was nur dazu dient, dass es von anderen geerbt wird, braucht
keinen Reset, auch wenn es ein reset() definiert (was in erbenden Objekte
benutzt wird).
Die create_super() in den Standardobjekten tun momentan genau dieses.
RUeCKGABEWERT¶
keiner
BEMERKUNGEN¶
Wenn ihr von /std/ erbt, braucht ihr euch in aller Regel um diese
Funktion keine Gedanken machen.
Ihr koennt diese Funktion aber in Objekten selber definieren, die nur zum
Erben gedacht sind. Dies kann sinnvoll ein, wenn ihr nicht von /std/ erbt
und ein reset() im Objekt habt oder was machen wollt, was ueber das
Abschalten des Resets hinausgeht.
BEISPIELE¶
Gegeben sei folgende Vererbungskette:
/std/room -> /d/inseln/zesstra/stdraum -> /d/inseln/zesstra/raum
Wird nun 'raum' geladen und 'stdraum' ist noch nicht geladen, wird der
Driver implizit von selbst 'stdraum' laden (weil 'raum' das Programm von
'stdraum' braucht). Bei diesem Laden wird das create() in 'stdraum' nicht
ausgefuehrt, sondern stattdessen create_super().
SIEHE AUCH¶
create(L), reset(L)
hook(C), create(H), create_ob(H), create_super(H, reset(H)
create(A), reset(A)
22.10.2007, Zesstra