2019-11-04 21:43:55 +00:00
parent ffd5288e47
commit 3ec46791b2

@@ -23,4 +23,18 @@ Interfaces können konkrete Implementierungen haben (`default`)
### Polymorphie, Late Binding und Exceptions (S. 110) ### Polymorphie, Late Binding und Exceptions (S. 110)
Oberklasse deklariert Checked Exceptions, Unterklasse nicht mehr. Oberklasse deklariert Checked Exceptions, Unterklasse nicht mehr.
Wenn Oberklasse als Typ deklariert muss die Exception behandelt werden, auch wenn zur Laufzeit Unterklasse vorhanden ist. **Compilefehler**, da Compiler Exceptions prüft. Wenn Oberklasse als Typ deklariert muss die Exception behandelt werden, auch wenn zur Laufzeit Unterklasse vorhanden ist. **Compilefehler**, da Compiler Exceptions prüft.
### Überladen vs. Überschreiben (S. 112, S. 116)
Aufpassen, Methoden können auch solche aus Oberklassen überladen. Dadurch ggf. Fehler oder nicht. Methodenauswahl Überladen Compilezeit, Überschreiben Laufzeit.
### main() kan überladen werden (S. 115)
Aber nur die public static void main (String [] args) kann von der JVM als Startmethode verwendet werden.
### `static` und `default` aus Interfaces müssen nicht implementiert werden (S. 123)
### Illegale Verwendung `extends` und `implements` (S. 127)
- Klassen implementieren Interfaces (auch mehrere)
- Klassen extenden Klassen (nicht mehrere)
- Interfaces extenden Interfaces (auch mehrere)
- Klassen: erst extends, dann implements