Update page '01 Kapitel 1'
@@ -2,12 +2,17 @@
|
|||||||
- Compile-Fehler, wenn Static-Imports nicht eindeutig sind
|
- Compile-Fehler, wenn Static-Imports nicht eindeutig sind
|
||||||
- `import static`, umgekehrt ompile-Fehler
|
- `import static`, umgekehrt ompile-Fehler
|
||||||
- `import static` bezieht sich immer auf das Objekt selbst. `import static System.out;` kann per `out.println()` genutzt werden.
|
- `import static` bezieht sich immer auf das Objekt selbst. `import static System.out;` kann per `out.println()` genutzt werden.
|
||||||
|
- Import von nicht sichtbaren Klassen führt zu einem Compilefehler
|
||||||
|
|
||||||
|
# Identifier
|
||||||
|
- Zahlen, Dollarzeichen, Buchstaben, Unterstrich erlaubt. Erstes Zeichen keine Zahl.
|
||||||
|
# Packages
|
||||||
|
- Dürfen keine Minuszeichen enthalten
|
||||||
# Klassen
|
# Klassen
|
||||||
- Nur eine `public`-Klasse pro Datei, dann Dateiname gleich Klassenname
|
- Nur eine `public`-Klasse pro Datei, dann Dateiname gleich Klassenname
|
||||||
- Datei ohne `public`-Klasse erlaubt
|
- Datei ohne `public`-Klasse erlaubt
|
||||||
- Innere Klassen nicht Teil des OCA-Tests
|
- Innere Klassen nicht Teil des OCA-Tests
|
||||||
- Default-access: Nur im selben Paket sichtbar. **Todo:** In Unterpaketen?
|
- Default-access: Nur im selben Paket sichtbar. Auch nicht in Unterpaketen.
|
||||||
- Klassen können nicht gleichzeitig `final` und `abstract` deklariert werden
|
- Klassen können nicht gleichzeitig `final` und `abstract` deklariert werden
|
||||||
|
|
||||||
# Strictfp
|
# Strictfp
|
||||||
@@ -26,6 +31,9 @@
|
|||||||
|
|
||||||
# Interfaces
|
# Interfaces
|
||||||
- Ein Interface ist ein Vertrag
|
- Ein Interface ist ein Vertrag
|
||||||
|
- `abstract`-Deklaration implizit, darf notiert werden
|
||||||
- Seit Java 8 konkrete Implementierungen möglich (mit Einschränkungen)
|
- Seit Java 8 konkrete Implementierungen möglich (mit Einschränkungen)
|
||||||
- In einem Interface deklarierte Methoden sind implizit `abstract` und `public` (wenn nicht `default` oder `static` angegeben wird). Modifier können dennoch hinzugefügt werden.
|
- In einem Interface deklarierte Methoden sind implizit `abstract` und `public` (wenn nicht `default` oder `static` angegeben wird). Modifier können dennoch hinzugefügt werden.
|
||||||
- Alle Variablen müssen `public static final` deklariert werden (**Todo:** Oder sind sie es implizit?)
|
- `final, strictfp, native` deklarierte Methoden sind in Interfaces nicht möglich
|
||||||
|
- Alle Variablen müssen `public static final` deklariert werden (**Todo:** Oder sind sie es implizit?)
|
||||||
|
- Interfaces können beliebig viele andere Interfaces `extend`en, aber keine Klassen und auch nicht implementieren
|
||||||
Reference in New Issue
Block a user