@@ -176,16 +176,25 @@ Trowable
|
||||
- Bei Zuweisungen zu ``final`` ähnlich: Compiler ahndet Mehrfachzuweisung, wenn er Bedingung nicht eindeutig auflösen kann. ``if (true) s3= "Hallo"; if (false) s3 = "Welt";`` geht, ``if (b) s3= "Hallo"; if (!b) s3 = "Welt";`` geht nicht. ``final boolean c = false; if (c) s6 = "Hallo"; if (!c) s6 = "Welt";`` geht, da c final ist.
|
||||
- Ähnlich bei try-catch: Wenn der Compiler sicher ist, dann erlaubt (Compile-Zeit-Konstanten, auf jeden Fall geworfene Exeptions, finally-Blöcke etc.)
|
||||
- **Erlaubte und implizite Modifier**
|
||||
- Interfaces
|
||||
- Interfaces: implizit ``abstract``. Formal nicht ``public``, können aber von überall verwendet werden. Wenn ``public``, eigene Datei. Dürfen nicht ``protected`` oder ``private`` sein.
|
||||
- Methoden
|
||||
- Felder
|
||||
- ``default``: implizit ``public``, dürfen nicht ``private, protected, final, abstract, static`` sein.
|
||||
- ``static``: implizit ``public``, dürfen nicht ``private, protected, final, abstract, default`` sein.
|
||||
- Standard: implizit ``public``, dürfen nicht ``private, protected, final, abstract, static`` sein
|
||||
- Felder: Sind immer Konstanten, also implizit ``public static final``
|
||||
|
||||
- Klassen
|
||||
- Klassen: Sichtbarkeit ´´public, <default>`` - bei public eigene Datei, ``final``, ``abstract`` (nicht beides), ``strictfp``
|
||||
- Methoden
|
||||
- Sichtbarkeit: ``public, protected, <default>, private``
|
||||
- ``final, abstract``: Nicht zusammen, ``abstract`` nur, wenn Klasse ``abstract``
|
||||
- ``synchronized, native, strictfp``
|
||||
- Felder
|
||||
- Sichtbarkeit: ``public, protected, <default>, private``
|
||||
- ``final``
|
||||
|
||||
- Lokale (automatische) Variablen
|
||||
-
|
||||
- Dürfen keine Sichtbarkeits-Modifier ``private, protectes, public`` haben
|
||||
- Können ``final`` sein
|
||||
|
||||
- **Implementierung 2 Interfaces**
|
||||
- Interessant, wenn beide Interfaces dieselbe Methode deklarieren
|
||||
|
||||
Reference in New Issue
Block a user