Super: Unterschied zwischen den Versionen

Aus EINI
Wechseln zu: Navigation, Suche
K
 
(Eine dazwischenliegende Version von einem anderen Benutzer wird nicht angezeigt)
Zeile 1: Zeile 1:
 
Das [[Schlüsselwort]] '''super''' repräsentiert die '''Super-''' oder '''Oberklasse''' eines Objektes (siehe: [[Vererbung]]).
 
Das [[Schlüsselwort]] '''super''' repräsentiert die '''Super-''' oder '''Oberklasse''' eines Objektes (siehe: [[Vererbung]]).
  
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 in [[Konstruktor]]en der Konstruktor der Oberklasse (<code>super()</code>) oder können in [[Methode]]n einer Unterklasse Methoden der Oberklasse explizit aufgerufen werden(<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>

Aktuelle Version vom 9. Juni 2016, 23:40 Uhr

Das Schlüsselwort super repräsentiert die Super- oder Oberklasse eines Objektes (siehe: Vererbung).

Mithilfe dieses Schlüsselwortes kann in Konstruktoren der Konstruktor der Oberklasse (super()) oder können in Methoden einer Unterklasse Methoden der Oberklasse explizit aufgerufen werden(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);
}