×
Informatik Sekundarstufe II

 DOWNLOADSEITE

Seite: aae_index
Diese Seite wurde aktualisiert am 04.03.2024

LOGIN
Benutzer:
Passwort:
 
Geogebra-
Quelle: https://nwm2.net-schulbuch.de/index.php
Druckversion vom 03.05.2024 06:14 Uhr
Startseite Einführungsphase Grundlagen OOP Klassen
Startseite Einführungsphase Grundlagen OOP Klassen Diese Seite wurde aktualisiert am 04.03.2024

Klassen 

Sie wissen bereits, dass ein objektorientiertes Programm aus einer Menge von Objekten besteht, die als Instanzen von Klassen erzeugt werden. Objekte haben Daten als Werte von Attributen, die in der zugehörigen Klassen mit Namen und Datentyp deklariert werden. Durch Aufruf eines Konstruktors der Klasse wird möglichst allen Attributen der Klasse ein Wert zugewiesen werden und damit ein Objekt als Instanz dieser Klasse erzeugt. Von einer Klasse können mehrere Objekte erzeugt werden, die dann dieselben Attribute mit zumindest teilweise unterschiedlichen Werten haben. Darüber hinaus werden in einer Klasse Methoden deklariert, die Operationen mit den Daten des Objektes durchführen oder auch Werte zurückliefern können. Objekte können an andere Objekte Nachrichten versenden, um sie zu veranlassen bestimmte Methoden aufzurufen. Der Ablauf des Programms wird durch die Kommunikation zwischen den erzeugten Objekten und die Kontrollstrukturen (Schleifen, Verzweigungen) gesteuert. 

Alle in diesem Online-Buch bisher erarbeiteten Programme bestanden jeweils nur aus einer selbst deklarierten Klasse. Alle anderen Klassen, mit denen wir Grafikobjekte erzeugt haben, wurden uns durch die Java-Klassenibliothek sas.jar zur Verfügung gestellt. Um ein Programm ablaufen zu lassen, wurde mit BlueJ ein Objekt dieser Klasse erzeugt und eine Methode dieses Objektes in BlueJ aufgerufen, um das Programm zu starten. Bei den letzten Beispielen war das die Methode fuehreAus. 

Werden in einem Programm Objekte benötigt, die nicht aus einer Klasse einer Klassenbibliothek erzeugt werden können, müssen eigene Klassen deklariert werden. In diesem Kapitel werden wir Programme modellieren und implementieren, die mindestens aus zwei Klassen bestehen.

Modellierung von Klassen 

Ausgehend von einer kontextbezogenen Problemstellungen wird die systematische Erarbeitung eines informatischen Modelles in Form eines Klassendiagramms (Implementationsdiagramms) erarbeitet. Nach der Identifizierung der benötigten Objekte werden erstmals eigene Klassen mit Attributen und Methoden modelliert, aus denen diese Objekte erzeugt werden. Das fertige Modell wird in einem Klassendiagramm/ Implementationsdiagramm dargestellt, das für alle Klassen die Attribute und Methoden mit ihrer Sichtbarkeit enthält sowie die Beziehungen zwischen Klassen, Assoziationen genannt, veranschaulicht.

Klasse Digitaluhr

Implementation von Klassen

Ausgehend von den im vorhergehenden Kapitel erarbeiteten informatischen Modellen, die in Form von Klassendiagrammen und der Dokumentation der verwendeteten Methoden vorliegen, werden in diesem Kapitel die Java-Programme in BlueJ entwickelt und auf dem Rechner getestet. Diesen Prozess nennt man Implementierung des Programms. Für jede Klasse des Klassendiagramms wird eine eigene Java-Klasse entwickelt. Bevor die Methoden in Java geschrieben werden können, müssen in vielen Fällen die Algorithmen in umgangssprachlicher Form erarbeitet werden. 

Vererbung 

In diesem Kapitel lernen Sie die Vererbungsbeziehung zwischen Klassen kennen. Zunächst werden ausgehend von einer Klasse Unterklassen definiert, die alle Eigenschaften und Methoden der Oberklasse erben und weitere hinzufügen. Die Oberklasse wird spezialisiert. In einem weiteren Beispiel wird, ausgehend von zwei ähnlichen Klassen mit vielen gemeinsamen Attributen und Methoden, eine Oberklasse deklariert, die diese gemeinsamen Eigenschaften und Methoden enthält. In diesem Fall sprechen wir von Generalisierung. 

 
Zusammenfassung

In diesem Kapitel werden zum Nachlesen die grundlegenden Begriffe im Zusammenhang mit Klassen noch einmal definiert und durch Beispiel erläutert.

Zusammenfassung
©2024 NET-SCHULBUCH.DE

10.09  0.1433  8.1.28