Kapitel 07: Verständnisfragen

Beschreibung

Finale Klassen, abstrakte Klassen und Schnittstellen
Patricia Steves
Karteikarten von Patricia Steves, aktualisiert more than 1 year ago
Patricia Steves
Erstellt von Patricia Steves vor mehr als 8 Jahre
53
2

Zusammenfassung der Ressource

Frage Antworten
Verdecken von Datenfeldern der Superklasse in der Subklasse In der Subklasse erstellt man ein Datenfeld (Variable) mit gleichem Namen
Wie greift man auf verdeckte Instanz- und Klassenvariablen der Superklassen zu? super.variable oder super.methode()
Was ist Polymorphie von Objekten in Java? Objekte einer Subklasse werdendurch Variablen vom Typ der Superklasse referenziert. Dadurch können für den Zugriff auf ein Objekt Variablen von unterschiedlichem Typ verwendet werden (Polymorphie).
Kann man immer ein Sohn-Objekt in ein Vater-Objekt casten? Ja, da so nur Datenfelder "verloren" gehen. Vater-Objekt hat weniger Eigenschaften.
Wann tritt die eingeschränkte Sichtweise auf? Wenn ein Objekt up-casted wurde und somit die "überflüssigen" Datenfelder wegfallen
Was ist eine finale Klasse und wie definiert man sie? public final class Quadrat { ... } Von einer finalen Klasse sind keine weiteren Klassen ableitbar; keine andere Klasse kann von dieser erben oder das Verhalten durch Überschreiben ändern
Wie kann man eine finale Methode überschreiben? Das Verhalten finaler Methoden ist in einer Subklasse nicht änderbar.
Machen finale Instanz- und Klassenvariablen Sinn? Kommt auf die Verwendung der Variablen an. Bei Rechen-Variablen, die sich beim Programmverlauf nicht ändern sollen, macht es beispielsweise Sinn.
Abstrakte Klasse Abstraktion, von der in der Realität keine Objekte vorhanden sind. Dient zur Generalisierung in der Klassenhierarchie. zB. Getränke ( > Wasser, > Softdrink, ...)
Deklaration einer abstrakten Klasse abstract class Klasse { ... }
Abstrakte Methode public abstract void methode ( ... ); Besitzt nur der Methodenkopf. Implementierung erfolgt in einer abgeleiteten Klasse.
Wo wird eine abstrakte Methode implementiert? In einer abstrakten Klasse (Interfaces/Schnittstellen)
Kann eine abstrakte Klasse nicht-abstrakte Methoden enthalten? Ja
Wozu braucht man abstrakte Methoden? Als Vorlage für die letztendliche Implementation der Methoden. Generalisierung
Muss eine Subklasse einer abstrakten Klasse alle abstrakten Methoden unbedingt implementieren? Nein. Wenn sie jedoch nicht alle implementiert, ist die Subklasse selbst auch abstrakt
Schnittstelle Bauplan für eine Klasse, die diesen Bauplan implementiert.
In welcher Phase des Systementwufs werden Schnittstellen festgelegt? Feinentwurf
Wie wird eine Schnittstelle in UML visualisiert? «interface» PunktSchnittstelle ---------------------------- ↑ Punkt
Was beinhaltet eine Schnittstelle in Java? Die Deklaration, Schnittstellenkörper mit Definition der Konstanten (müssen initialisiert werden!) und Methodenköpfe Konstanten automatisch public static final, Methoden automatisch public abstract
Können die in einer Schnittstelle definierten Konstanten private sein? Nein. Nur public static final.
Warum müssen alle Konstanten initialisiert sein? Vermutlich, weil Konstanten im Nachhinein nicht dynamisch verändert werden können und somit bereits einen zugeschriebenen Wert benötigen.
Kann in einer Schnittstelle bei Methodendeklaration das Schlüsselwort abstract ausgelassen werden? Ja
Definiert eine Schnittstelle auch einen abstrakten Datentyp? Ja
Wie viele Schnittstellen kann eine Klasse in Java implementiert? Nur eine.
Zusammenfassung anzeigen Zusammenfassung ausblenden

ähnlicher Inhalt

Einführung Programmieren
Aaron Welther
Programmierung
So Li
Die Programmierung
Jam Behn
Europäische Städte
JohannesK
Zeiten Englisch
Janine Egli
Zivilrecht - Handelsrecht Streitigkeiten
myJurazone
Vetie: Virofragen 2016
Johanna Tr
Vetie: Lebenmittel 2019
Johanna Tr
Vetie: Fleisch 2019 Matrikel 14
Johanna Tr
Tierschutz und Ethologie 2022
Lisalotta Mayer