Vererbung & Polymorphie
BPE 8: Objektorientierte Programmierung
Lernfortschritt
0/4 Abschnitte
1. Vererbung (Inheritance)
Die "Ist-ein"-Beziehung
Eine Unterklasse (Spezialisierung) erbt alle Attribute und Methoden von einer Oberklasse (Generalisierung).
Merke: extends in Java bedeutet "erbt von"
UML-Notation:
Pfeil mit hohler, geschlossener Dreieckspitze zeigt zur Oberklasse.
Fahrzeug
# geschwindigkeit: int
- farbe: String
- farbe: String
+ fahren()
+ bremsen()
+ bremsen()
Auto
- anzahlTueren: int
+ hupe()
Fahrrad
- anzahlGaenge: int
+ klingeln()
Java-Code:
public class Auto extends Fahrzeug {
private int anzahlTueren;
public void hupe() {
System.out.println("Hup! Hup!");
}
// fahren() und bremsen() sind bereits vererbt!
}
Exzellent!
Du hast Vererbung, Überschreiben & Polymorphie gemeistert!
Zusammenfassung:
- ✓ Vererbung: extends, "Ist-ein"-Beziehung, hohles Dreieck
- ✓ Überschreiben: Unterklasse, gleiche Signatur, @Override
- ✓ Überladen: selbe Klasse, andere Parameter
- ✓ Polymorphie: Oberklasse-Variable kann Unterklasse-Objekt halten
- ✓ Späte Bindung: zur Laufzeit wird die richtige Methode gewählt