2019-11-15 14:36:51 +00:00
parent 7b64b633e9
commit 0fd99d1041

@@ -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;
-