16.09.2017 Aufrufe

Vorkurs Informatik

Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.

YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.

7.3 Objekte 121<br />

Aufgabe 7.6:<br />

Innerhalb des Quellcodes 7.2 wurde ein Konstruktor mit drei Parametern für die Klasse Studierende<br />

definiert. Deklarieren Sie einen zweiten Konstruktor, der einen Parameter jahr beinhaltet. Bevor der Wert<br />

des Parameters jahr dem Attribut geburtsjahr zugewiesen wird, soll diese Jahreszahl auf Korrektheit<br />

überprüft werden. Eine Jahreszahl soll übernommen werden, falls diese nicht vor 1950 liegt. Ansonsten soll<br />

das Attribut geburtsjahr auf 0 gesetzt werden.<br />

Aufgabe 7.7:<br />

Erweitern Sie die Klasse Ampel aus Aufgabe 7.3.<br />

a) Die Klasse soll einen Konstruktor haben, der beide Lampen auf „aus“ initialisiert.<br />

b) Ferner soll die Klasse die Methoden schalteRot und schalteGruen, mit einem Booleschen Parameter<br />

wert, beinhalten, der den Zustand angibt, auf den das Attribut roteLampe bzw. grueneLampe<br />

durch Anwendung der entsprechenden Methode gesetzt wird. Schließlich soll die Klasse noch eine<br />

Methode druckeZustand haben, die den Wert der Attribute auf dem Bildschirm ausgibt.<br />

7.3 Objekte<br />

Ein Objekt ist eine Datenstruktur, deren Datentyp durch eine Klasse festgelegt ist. Die Klasse<br />

beschreibt den Aufbau und die Funktionsweise des Objekts. Bei einem Objekt handelt es sich<br />

um eine konkrete Ausprägung einer Klasse, deshalb auch Instantiierung einer Klasse oder kurz<br />

Instanz genannt. Die Klassendeklaration legt fest, welche Attribute und Methoden für ein Objekt<br />

der Klasse zur Verfügung stehen und in welcher Form eine Instantiierung stattfinden kann.<br />

Somit ist die Klassendeklaration eine Art Schablone oder Maske für das Aussehen der Objekte<br />

der Klasse. Durch die Klasse Studierende wird beispielsweise festgelegt, dass jedes Objekt<br />

der Klasse durch die Attribute studname, matrikelnummer und geburtsjahr beschrieben<br />

wird (vgl. Abbildung 7.6). Ein (konkretes) Objekt der Klasse Studierende ist dasjenige, das<br />

Thorsten Meier mit der Matrikelnummer 88188 und dem Geburtsjahr 1980 repräsentiert. Ein<br />

weiteres Objekt beschreibt beispielsweise Monika Schmidt.<br />

Zusammenfassung 7.7 (Objekt):<br />

Ein Objekt ist eine Datenstruktur, deren Datentyp durch eine Klasse festgelegt ist.<br />

Die Klasse beschreibt den Aufbau und die Funktionsweise des Objekts. Bei einem<br />

Objekt handelt es sich um eine konkrete Ausprägung einer Klasse, deshalb auch Instantiierung<br />

einer Klasse oder kurz Instanz genannt.<br />

7.3.1 Beispiel: Suchen in einem Array<br />

Wir kommen nun auf das Problem des Suchens in einem Datenbestand aus Abschnitt 7.1 zurück.<br />

Der Quellcode 7.3 zeigt ein Programm, in dem der Algorithmus suche aus Pseudocode<br />

7.1 als Funktionen in Java realisiert wird. Das Hauptprogramm realisiert hierbei die Suche aus<br />

Abbildung 7.3.

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!