Super: Unterschied zwischen den Versionen
Aus EINI
Hauer (Diskussion | Beiträge) |
|||
| Zeile 2: | Zeile 2: | ||
Mithilfe dieses Schlüsselwortes kann man in [[Konstruktor]]en den Konstruktor der Oberklasse explizit aufrufen (<code>super()</code>) oder in [[Methode]]n einer Unterklasse explizit Methoden der Oberklasse aufrufen (<code>super.methode()</code>). | Mithilfe dieses Schlüsselwortes kann man in [[Konstruktor]]en den Konstruktor der Oberklasse explizit aufrufen (<code>super()</code>) oder in [[Methode]]n einer Unterklasse explizit Methoden der Oberklasse aufrufen (<code>super.methode()</code>). | ||
| + | |||
| + | = Beispiele = | ||
| + | |||
| + | <source lang="java" title="Arbiträrer Aufruf einer überschriebenen Methode der Oberklasse"> | ||
| + | public overriddenFunction(int foo){ | ||
| + | super.overriddenFunction(foo); | ||
| + | /* Do more */ | ||
| + | } | ||
| + | </source> | ||
| + | |||
| + | <source lang="java" title="Aufruf des Cuboid-Konstruktors aus dem Cube-Konstruktor"> | ||
| + | public Cube(int edgeLength){ | ||
| + | super(edgeLength, edgeLength, edgeLength); | ||
| + | } | ||
| + | </source> | ||
Version vom 9. Juni 2016, 22:32 Uhr
Das Schlüsselwort super repräsentiert die Super- oder Oberklasse eines Objektes (siehe: Vererbung).
Mithilfe dieses Schlüsselwortes kann man in Konstruktoren den Konstruktor der Oberklasse explizit aufrufen (super()) oder in Methoden einer Unterklasse explizit Methoden der Oberklasse aufrufen (super.methode()).
Beispiele
public overriddenFunction(int foo){
super.overriddenFunction(foo);
/* Do more */
}
public Cube(int edgeLength){
super(edgeLength, edgeLength, edgeLength);
}