Kapitel 07: Verständnisfragen

Description

Finale Klassen, abstrakte Klassen und Schnittstellen
Patricia Steves
Flashcards by Patricia Steves, updated more than 1 year ago
Patricia Steves
Created by Patricia Steves over 8 years ago
53
2

Resource summary

Question Answer
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.
Show full summary Hide full summary

Similar

Einführung Programmieren
Aaron Welther
Programmierung
So Li
Die Programmierung
Jam Behn
Biology Unit 1
anna.mat1997
Of Mice and Men
amyk4321
Types and Components of Computer Systems
Jess Peason
HRCI Glossary of Terms O-Z
Sandra Reed
Animal Farm Chapter Overview
10jgorman
Leaving Certificate Japanese Kanji
Sarah Egan
How the European Union Works
Sarah Egan