Super: Unterschied zwischen den Versionen

Aus EINI
Wechseln zu: Navigation, Suche
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, 23: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

Arbiträrer Aufruf einer überschriebenen Methode der Oberklasse
1
2
3
4
public overriddenFunction(int foo){
    super.overriddenFunction(foo);
    /* Do more */
}
Aufruf des Cuboid-Konstruktors aus dem Cube-Konstruktor
1
2
3
public Cube(int edgeLength){
    super(edgeLength, edgeLength, edgeLength);
}