From 3db84b80c27194a25b58ed537a0a391ea2b112fa Mon Sep 17 00:00:00 2001 From: Sebastian Eidecker Date: Sat, 16 Nov 2019 10:52:42 +0000 Subject: [PATCH] --- Aufpassen%21.md | 17 +++++++++++++---- 1 file changed, 13 insertions(+), 4 deletions(-) diff --git a/Aufpassen%21.md b/Aufpassen%21.md index d381530..a6eedc6 100644 --- a/Aufpassen%21.md +++ b/Aufpassen%21.md @@ -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, `` - bei public eigene Datei, ``final``, ``abstract`` (nicht beides), ``strictfp`` - Methoden + - Sichtbarkeit: ``public, protected, , private`` + - ``final, abstract``: Nicht zusammen, ``abstract`` nur, wenn Klasse ``abstract`` + - ``synchronized, native, strictfp`` - Felder + - Sichtbarkeit: ``public, protected, , 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