diff --git a/Aufpassen%21.md b/Aufpassen%21.md index 0100911..87c3a89 100644 --- a/Aufpassen%21.md +++ b/Aufpassen%21.md @@ -42,7 +42,9 @@ - 0 % 3 == 0 - **Ueberladen**: null (als Schluesselwort kann nicht uebergeben werden, wenn der Compiler dadurch die Methode nicht eindeutig bestimmen kann. Wenn Typ bekannt ist, kein Problem. - **`throw null`** führt zu `NullPointerException` -- **switch**: `ausdruck` muss Typ `enum`, `byte`, `short`, `int`, `char` oder `String` ergeben +- **switch**: + -`ausdruck` muss Typ `enum`, `byte`, `short`, `int`, `char` oder `String` ergeben + - Auch vom Compiler berechenbare Audrücke in case-Anweisungen nicht erlaubt - **Erlaubte Identifier-Namen**: - Müssen mit `_`, `$` oder Buchstabe beginnen - Danach auch Zahlen erlaubt @@ -116,9 +118,10 @@ - Downcasting: Wenn Typ Oberklasse deklariert, aber Laufzeit Unterklasse: Zuweisung an Unterklasse per explizitem Cast möglich (ggf. ClassCastException zur Laufzeit) - Upcasting: Referenzen einer Unterklasse können ohne explizitem Cast einer Oberklasse zugewiesen werden. - **Scope**: Variablen im Scope dürfen nicht neu definiert werden. Auch z.B. nicht in for-Schleifenvariable. +- **LocalDate, LocalTime, LocalDateTime**: Sind *immutable*! - **Arrays**: - Array-Index kann auch mit ``char, short, byte`` angesprochen werden, nicht aber mit ``long`` - Deklaration: `[]` können vor oder nach Variablennamen stehen, bei mehrdimensionalen auch gemischt davor und danach - Niemals Deklaration und Größe in einem Schritt; -- +