Lernpfad:Objektorientierte Programmierung mit Java/Vererbung: Unterschied zwischen den Versionen

Zur Navigation springen Zur Suche springen
Zeile 26: Zeile 26:


== Methoden überschreiben ==
== Methoden überschreiben ==
Beim Überschreiben bekommen abgeleitete Klassen eine eigene Version mindestens einer Methode der Basisklasse.  
Beim Überschreiben bekommen abgeleitete Klassen eine eigene Version mindestens einer Methode der Basisklasse.
 
Betrachte das folgende Klassendiagramm mit einer Ober- und drei erbenden Unterklassen und die dazugehörige Implementierung.
[[Datei:UML Vererbung 3.jpg|center]]


<syntaxhighlight lang="java">
<syntaxhighlight lang="java">
Zeile 69: Zeile 72:
}
}
</syntaxhighlight>
</syntaxhighlight>
Die Unterklassen <code>Biene</code> und <code>Frosch</code> implementieren die Methode <code>sagWas() : int</code>, die auch in der Oberklasse <code>Tier</code> vorhanden sind. Sie **Überschreiben** die Methode in der Oberklasse.
{{Aufgabe:Start}}
# Lies den [http://openbook.rheinwerk-verlag.de/javainsel/06_004.html#u6.4.1 "Abschnitt 6.4.1: Methoden in Unterklassen mit neuem Verhalten ausstatten"] im Onlinebuch "Java ist auch eine Insel" bis zur Überschrift "Die Annotation @Override".
# Welche Ausgabe wird vom Quelltext oben erzeugt?
<lückentext>
<lückentext>
Ein Tier sagt '''- Stille -'''<br/>
Ein Tier sagt '''- Stille -'''<br/>
Zeile 75: Zeile 84:
Was sage ich? '''- Stille -()'''
Was sage ich? '''- Stille -()'''
</lückentext >
</lückentext >
{{Aufgabe:Start}}
# Lies den [http://openbook.rheinwerk-verlag.de/javainsel/06_004.html#u6.4.1 "Abschnitt 6.4.1: Methoden in Unterklassen mit neuem Verhalten ausstatten"] im Onlinebuch "Java ist auch eine Insel" bis zur Überschrift "Die Annotation @Override".
# Erstellt ein kleines Beispielprojekt, an dem das Konzept "Überschreiben" erklärt werden kann.
# Erstellt ein kleines Beispielprojekt, an dem das Konzept "Überschreiben" erklärt werden kann.
{{Aufgabe:End}}
{{Aufgabe:End}}

Navigationsmenü