From 1777f00fecc1f425b007945417dc0b5f8ac856eb Mon Sep 17 00:00:00 2001 From: Sebastian Eidecker Date: Sun, 24 Mar 2019 16:25:53 +0000 Subject: [PATCH] Update page '01 Kapitel 1' --- 01-Kapitel-1.md | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/01-Kapitel-1.md b/01-Kapitel-1.md index 62bb7de..2e6dafb 100644 --- a/01-Kapitel-1.md +++ b/01-Kapitel-1.md @@ -59,4 +59,15 @@ - Lokale Variablen könnnen keine Access-Modifier haben. Compile-Fehler. Nur `final` möglich. # this -- `this` bezieht sich immer auf das aktuell ausgeführte *Objekt*. Ist implizit, kann aber anegeben werden. \ No newline at end of file +- `this` bezieht sich immer auf das aktuell ausgeführte *Objekt*. Ist implizit, kann aber anegeben werden. + +# final +- `final`-Methoden können nicht überschrieben werden. (Fallstricke bei final und Access-Modifiern. Compile-Fehler oder einfach neu definiert!) +- `String` ist `final` +- Klassen mit `final`-Methoden können überschrieben werden. +- `final`-Parameter können nicht neu zugewiesen werden (sind aber nicht immutable) + +# abstract +- Abstracte Klassen dürfen konkrete Methoden besitzen +- Erbende Klassen müssen alle abstrakten Methoden der Oberklasse implementieren oder selbst abstrakt sein. +- **Todo:** Sind `abstract`-Methoden immer `public`. Wenn nicht, kann package access lästig sein, weil eine Klasse ggf. nicht implementieren kann! \ No newline at end of file