@@ -13,7 +13,15 @@ Methoden müssen unterschiedlich genug sein, ansonsten Compilefehler. Folgende R
|
||||
- Die tatsächliche Methode wird zur Compilezeit ermittelt (und damit der deklarierte Typ, nicht der tatsächliche zur Laufzeit).
|
||||
|
||||
#### Primitive und Autoboxing
|
||||
-
|
||||
- Wenn perfekt passende Methode vorhanden wird sie ausgewählt (sowohl bei Primitiven als auch bei Wrapper)
|
||||
- Wrapper übergeben:
|
||||
- Wrapper nicht vorhanden, primitiv vorhanden: Primitive wird gewählt
|
||||
- Wrapper nicht vorhanden, primitiv nicht vorhanden, primitiv auto Cast vorhanden: Passende primitive mit automatischem Cast wird ausgewählt
|
||||
- Wrapper nicht vorhanden, überhaupt keine (passenden) mit Primitive: Compile-Fehler. Kein Autocasting bei Wrapper-Typen
|
||||
|
||||
- Primitiv übergeben:
|
||||
- Primitiv nicht vorhanden, Wrapper nicht vorhanden: Passende primitive mit automatischem Cast wird ausgewählt
|
||||
- Primitiv nicht vorhanden, aber Wrapper: int -> long, long -> Long => Erst Autocast auf Primitiv, dann Wrapper
|
||||
|
||||
### Regeln Überschreiben
|
||||
Methoden in Unterklassen können solche in Oberklassen überschreiben. Folgende Regeln gelten:
|
||||
|
||||
Reference in New Issue
Block a user