Unterklassen

D

David Nienhaus

Gast
Hallo liebe Leute,

ich habe eine kurze Verständnisfrage:

Verstehe ich es richtig, dass in Unterklassen keine Methoden existieren dürfen, die nicht auch in der Oberklasse existieren? Ich weiß, dass man in Unterklassen Methoden die in der Oberklasse existieren, durch weitere Funktionalitäten erweitern kann. Kann man aber auch komplett neue Methoden erstellen?
Angenommen ich habe zwei Unterklassen und möchte nur einer der beiden eine bestimmte Methode verpassen. Ist das möglich ohne, dass ich diese Methode auch in der Oberklasse erstelle? Irgendwie steig ich noch nicht so ganz dahinter..

Liebe Grüße
David
 

httpdigest

Top Contributor
Ja, das geht selbstverständlich.
Java:
public class Oberklasse {
  public void machWas() {...}
}
public class Unterklasse extends Oberklasse {
  @Overrides
  public void machWas() {...}
  // Neue Methode:
  public void tuWas() {...}
}
Was du dann natürlich nicht machen kannst ist, die Methode "tuWas()" an einer Variable vom Typ Oberklasse aufzurufen. Du brauchst dann natürlich immer einen Ausdruck/Variable, dessen compilezeit/statischer Typ tatsächlich Unterklasse ist. Also folgendes geht nicht:
Java:
Oberklasse oberklasse = new Unterklasse();
oberklasse.tuWas(); // <- Compilerfehler!
 

Ähnliche Java Themen


Oben