20
%C3%9Cberladen-und-%C3%9Cberschreiben-von-Methoden.md
Normal file
20
%C3%9Cberladen-und-%C3%9Cberschreiben-von-Methoden.md
Normal file
@@ -0,0 +1,20 @@
|
|||||||
|
Methoden mit gleichem Namen, aber unterschiedlicher Parameterliste, nennt man überladen. Es wird dann zur Laufzeit die passende gewählt.
|
||||||
|
|
||||||
|
**Vorsicht:** Unter Umständen, z.B. bei unterschiedlichen Sichtbarkeiten in Vererbungshierarchien, sind Methoden evtl. nicht überladen sondern schlicht neu definiert. Es wird dann ggf. eine andere Methode gewählt oder Code ist nicht kompilierbar.
|
||||||
|
|
||||||
|
### Regeln Überladen
|
||||||
|
Methoden müssen unterschiedlich genug sein, ansonsten Compilefehler. Folgende Regeln gelten:
|
||||||
|
|
||||||
|
-
|
||||||
|
-
|
||||||
|
- Konstruktoren können auch überladen sein, aber nicht überschrieben
|
||||||
|
|
||||||
|
### Regeln Überschreiben
|
||||||
|
Methoden in Unterklassen können solche in Oberklassen überschreiben. Folgende Regeln gelten:
|
||||||
|
|
||||||
|
- `final`-Methoden können nicht überschrieben werden
|
||||||
|
- Nur vererbte Methoden können überschrieben werden, private also nicht. Stattdessen wäre dies dann schlicht eine andere Methode.
|
||||||
|
- Selbe Argumentliste
|
||||||
|
- Selber Rückgabewert oder Unterklasse davon
|
||||||
|
- Selbe oder weniger restriktive Sichtbarkeit. Restriktiver nicht erlaubt.
|
||||||
|
- Kann weniger oder eingeschränktere checked Exceptions werfen, aber nicht mehr oder breitere. Unchecked beliebig.
|
||||||
@@ -1,8 +0,0 @@
|
|||||||
Methoden mit gleichem Namen, aber unterschiedlicher Parameterliste, nennt man überladen. Es wird dann zur Laufzeit die passende gewählt.
|
|
||||||
|
|
||||||
**Vorsicht:** Unter Umständen, z.B. bei unterschiedlichen Sichtbarkeiten in Vererbungshierarchien, sind Methoden evtl. nicht überladen sondern schlicht neu definiert. Es wird dann ggf. eine andere Methode gewählt oder Code ist nicht kompilierbar.
|
|
||||||
|
|
||||||
### Regeln
|
|
||||||
Methoden müssen unterschiedlich genug sein. Folgende Regeln gelten:
|
|
||||||
|
|
||||||
-
|
|
||||||
Reference in New Issue
Block a user