7. VL Flashcards
Von welcher Klasse erbt jede Klasse automatisch?
java.lang.Object
Werden private Attribute/Methoden vererbt?
Nein!
Werden Konstruktoren vererbt?
Nein!
Polymorphie: Wie können auf Methoden der Unterklasse zugegriffen werden?
explizite Typkonversion (casting!)
Syntax instanceof
objektName instanceof KlassenName
Wofür wird die Methode equals aus java.lang.Object benötigt?
Überprüft ob Objekte inhaltlich gleich sind
Rechteck r = new Rechteck (1,2,3,4);
Rechteck b = new Rechteck (1,2,3,19);
boolean x = r.equals(b); –> false
Wofür wird die Methode toString aus java.lang.Object benötigt?
Gibt Zeichenkette zurück, die das Objekt beschreibt
Rechteck r = new Rechteck (1,2,3,4);
System.out.println(r); //Hier wird toSting() aufgerufen
Wie kann man vorgehen wenn man verhindern will, dass Klassen vererbt werden?
public class final String { ... }
Wie kann man verhindern, dass vererbte Methoden überschrieben werden?
public final void quadriere () {
…
}
Können von abstrakte Klassen Objekte erzeugt werden?
Nein!
Sie können, aber als Objekttyp verwendet werden (Polymorphie).
Sind abstrakte Methoden nur in abstrakten Klassen?
Ja!
Wie sieht der Kopf von abstrakten Methoden aus?
public abstract void paint();
Kein Methodenrumpf{}!
Erbende Klassen müssen diese Methode implementieren oder sie sind selber abstrakt!