diff --git a/Aufpassen%21.md b/Aufpassen%21.md index 2c5e365..0100911 100644 --- a/Aufpassen%21.md +++ b/Aufpassen%21.md @@ -82,6 +82,7 @@ - null kann nicht angehaengt oder eingefuegt werden, da dann ueberladene Methode nicht aufgerufen werden kann. - Immer darauf achten, toString() aufzurufen - **final-Felder**: Müssen im Konstruktor oder Initialisierungsblock gesetzt werden. Standardwerte gelten hier nicht. +- **Fehlende Konsturktoren in Oberklasse**: Ist kein parameterloser Konstruktor in Oberklasse vorhanden, muss ein anderer explizit aufgerufen werden. Andernfalls Compile-Fehler - **Initialisierungsblöcke**: - Werden der Reihenfolge nach abgearbeitet - Können nicht synchronized sein @@ -114,10 +115,10 @@ - Sinnlose Casts sind erlaubt - 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. - **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; +-