Prinzip der Datenkapselung
Die Eigenschaften eines Objektes sind nach aussen hin nicht sichtbar, d.h. private. Möchte man wissen welche Eigenschaften ein Objekt, ist dies nur über das Abfragen der Methoden dieses Objektes möglich. Möchte ein Objekt zu gewissen Eigenschaften keine Auskunft geben, so stellt es für die Abfrage des Eigenschaftswertes einfach keine Methoden bereit. Mit diesem Prinzip der Datenkapselung hat das Objekt vollständige Kontrolle über seine Eigenschaften, Änderungen daran sind nur möglich wenn es das Objekt durch Bereitstellen von Methoden zulässt.
Was ist die Vorraussetzung für eine einfach Austauschbarkeit von einzelnen Objekten im objektorientierten Modell?
Einzelne Objekte sind über sogenannten Schnittstellen verbunden und kennen nur diese voneinander. So lange die Schnittstelle gleich bleibt, kann das Objekt im Inneren seine Implementierung anpassen = Kapselung der Zuständigkeiten. Das Objekt hat daher ganz konkrete Verantwortlichkeiten, seine “Leistung” wird anderen Objekten durch die Schnittstelle zur Verfügung gestellt, die Umsetzung bleibt dabei im Inneren gekapselt.
Unterschied Objekt und Klassendiagramm
In einem Objektdiagramm werden ganz konkrete Objekte und ihre Beziehungen betrachtet, für die einzelenen Eigenschaften werden konkrete Werte angegeben (z.B. Tutor “Max” unterrichtet “Mathe”)
In einem Klassendiagramm werden Klassen und ihre Beziehungen modelliert, zu den Klassen werden Attribute und Methoden modelliert.
Unterschied Struktur & Verhaltensdiagramme
Strukturdiagramm: visualisiert aus welchen Bestandteilen ein System aufgebaut ist und welche Beziehungen es zwischen den Bestandteilen gibt.
Verhaltensdiagramm: visualisiert das dynamische Systemverhalten. Beispielsweise welche Schritte für einen Algoryhtmus nacheinander abgelaufen werden müssen in einem Sequenz, Aktivitäts oder Kommunikationsdiagramm.
Ein Nomen kann ein Kanidat für eine Klasse oder eine Eigenschaft sein. Wie wird das entschieden?
Ein Hauptwort, das ein anderes Hauptwort näher beschriebt ist meist eine Eigenschaft (BuchNummer & Buch) Buch wird zur Klasse (durch Eigenschaft genauer beschrieben), BuchNummer zur Eigenschaft (beschreibt die Eigenschaft der Klasse genauer)
Welche Beziehungen könnten zwischen Klassen unteschieden werden?
Vererbungsbeziehung - ist ein
Aggregationsbeziehung - besteht aus
Assoziationsbeziehung - zwei Klassen stehen zueinander in Beziehung
Wann spricht man von überladenen Methoden?
Gibt es mehrere Methoden in einer Klasse, die den gleichen Namen aber eine unterschiedliche Parameterliste besitzen, spricht man von überladenen Methoden.
Wie wird es ermöglicht, dass Java Programme plattformunabhängig sind?
Auf jedem Rechner, auf dem Java Programme ausgeführt werden sollen, wird eine sogenannte Java Runtime Environment (JRE) installiert. Die JRE beinhaltet ein Programm, den Java Interpreter, der Programme die in Form von Bytecode vorliegen in Maschinensprache für den jeweiligen Rechner übersetzen kann. Die Plattformunabhängigkeit wird also durch 2 Konzepte erreicht.
Übersetzen von Java Quellcode in Zwischensprache (Bytecode)
Installieren einer Java JRE auf dem Rechner, der Java Programme ausführen soll.
Warum kann ein Programm, dass in der Computersprache C geschrieben ist, nicht auf jedem Computer ausgeführt werden?
Der C-Quelltext wird durch einen C-Compiler in Maschinensprache übersetzt. Das C-Programm muss dabei auf Funktionalitäten des Betriebsystems zurückgreifen (z.B. Ein- Ausgabe). Daher ist ein in maschinensprache übersetztes C Programm nur auf Betriebssystemen lauffähig für die es übersetzt wurde und lässt sich nur auf Rechnern mit gleichem Betriebssystem installieren.
Woher kommt die this. Referenz innerhalb der Methode?
Die this-Referenz ist ein erster unsichtbarer Parameter der auf die Daten eines Objekts im Speicher zeigt. Damit weiss eine Methode erst überhaupt zu welchem Objekt sie ausgeführt wird.
Aus welchen Bestandteilen besteht ein SDK?
Java Compiler
Java Virtuelle Maschine (*JRE)
Java Klassenbibliothek (*JRE)
weitere Hilfswerkzeuge für die Entwicklung
(Ein SDK beinhaltet als eine JRE)
Welche logischen Operatoren werden unterschieden?
Negationsoperator ! (kehrt den Wahrheitswert um)
logisches UND && (nur dann true wenn beide Operanden true)
logisches ODER || (nur dann false wenn beide Operanden false)
exclusives ODER ^ (nur dann true wenn sich Operanden unterscheiden)
Wie heisst der Operator zur Verkettung von Zeichenketten?
Stringkonkatenationsoperator
Welche Kontrollstrukturen gibt es?
Sequenz (Hintereinanderausführung von Anweisungen)
Iterationsanweisugen (Hintereinander Ausführen)
Selektionsanweisungen (abhängig von Bedingungen etwas ausfüllen
Welche Selektionsanweisungen gibt es?
bedingte Anweisung (bedingte Verzweigung ohne else teil)
einfache Alternative (bedingte Verzweigung)
mehrfache Alternative (erweiterte if-else Verzweigung)
Erläutere für den Fall einer überschriebenen Methode, welche Rolle der Typ einer Referenzvariable und welche Rolle der Typ eines Objekts spielt
Der Typ der Referenzvariable legt fest, welche Methoden überhaupt aufgerufen werden können und der Typ eines Objekts bestimmt im Falle des Überschreibens, welche Methodenimplementierung ausgeführt wird.
Werden private Eigenschaften an Kindklassen vererbt?
Ein Objekt der Kindklasse besitzt auch alle Eigenschaften der Vaterklasse. Auf die geerbten Eigenschaften der Vaterklasse kann aber innerhalb der Methoden der Kindklasse nicht zugegriffen werden. Für einen Zugriff auf die privaten Bestandteile der Vaterklasse müssen Methoden der Vaterklasse verwendet werden.
Last changed12 days ago