2019-11-15 14:32:28 +00:00
parent 69857f7a4d
commit 7b64b633e9

@@ -3,7 +3,7 @@
- `do-while`-Schleifen müssen mit einem Semikolon beendet werden
- **Sichtbarkeit**: Deklarationsbereich in `for`-Schleifen hat keinen eigenen Scope. Bereits deklarierte Variablen sind sichtbar, dürfen nicht unter selbem Namen neu deklariert werden.
- **Sichtbarkeit**: Bereits deklarierte Variablen dürfen in einer Methode nicht neu deklariert werden, wenn sie sichtbar sind. Feldnamen können versteckt werden, auf sie kann dann per `this.` zugegriffen werden.
- **Initialisierung**: Felder werden mit Standardwerten initialisiert (0, false, null, ...). Lokale Variablen nicht -> Compilefehler bei Zugriff!
- **Initialisierung**: Felder werden mit Standardwerten initialisiert (0, false, null, ...). Lokale Variablen nicht -> Compilefehler bei Zugriff! `final` deklarierte Felder müssen dennoch explizit initialsisert werden
- Auf root-Ebene definierte Klassen und Enums dürfen nicht `private` sein (dann wären sie auch nie sichtbar). Als innere Klassen möglich.
- **Call by reference, call by value**: Aufpassen auf Primitive
- Strings und Wrapper sind Sonderfälle bei (Standard)-Objekten, da immer Immutable! Können nicht verändert werden, verhalten sich daher wie value-Calls
@@ -116,4 +116,8 @@
- 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.
- Array-Index kann auch mit ``char, short, byte`` angesprochen werden, nicht aber mit ``long``
- **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;