Update page '01 Kapitel 1'
@@ -2,12 +2,17 @@
|
||||
- Compile-Fehler, wenn Static-Imports nicht eindeutig sind
|
||||
- `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 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
|
||||
- Nur eine `public`-Klasse pro Datei, dann Dateiname gleich Klassenname
|
||||
- Datei ohne `public`-Klasse erlaubt
|
||||
- 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
|
||||
|
||||
# Strictfp
|
||||
@@ -26,6 +31,9 @@
|
||||
|
||||
# Interfaces
|
||||
- Ein Interface ist ein Vertrag
|
||||
- `abstract`-Deklaration implizit, darf notiert werden
|
||||
- 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.
|
||||
- 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