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.2 Klassen 113<br />

ist. Im aktuellen Beispiel wurde in der Eingabefolge ein Element gefunden, das die gewünschte<br />

Matrikelnummer hat. Daher wird dieses Element d i zurückgegeben. Anderenfalls erfolgt die<br />

Ausgabe „null“.<br />

Aufgabe 7.1:<br />

Entwerfen Sie einen Algorithmus „sucheStudierende“ in Pseudocode-Schreibweise, vergleichbar zum Algorithmus<br />

7.1, der aus einer Folge von Studierendendatenobjekten die Namen der Studierenden zurückgibt,<br />

die älter als eine vorgegebene Jahreszahl sind. Als Eingabe erhält der Algorithmus die Parameter<br />

d 0 ,d 1 ,...,d n−1 vom Typ „Studierende“ sowie eine Jahreszahl j.<br />

7.2 Klassen<br />

Um Objekte wie die Studierendenobjekte aus dem vorhergehenden Abschnitt in einem Programm<br />

verwenden zu können, bieten höhere Programmiersprachen die Möglichkeit zur Deklaration<br />

eigener, komplexerer Datentypen, die es erlauben, Datensätze oder Objekte anzulegen,<br />

die sich aus anderen Daten zusammensetzen. Solche Mechanismen sind in Programmiersprachen<br />

unter den Namen „record“, „struct“ oder „class“ bekannt und unterscheiden sich in ihrer<br />

Leistungsfähigkeit. Wir konzentrieren uns im Folgenden auf das Klassen- und Objektkonzept,<br />

welches die Grundlage der objektorientierten Programmierphilosophie bildet.<br />

Eine Klasse ist ein Datentyp, der festlegt, wie alle Objekte einer Klasse aufgebaut sind. Innerhalb<br />

der Klasse wird festgelegt, aus welchen Datenkomponenten, sogenannten Attributen, ein Objekt<br />

besteht und welche Operationen zur Manipulation der Datenkomponenten, sogenannte Methoden,<br />

zur Verfügung stehen. Zusätzlich bietet sie Möglichkeiten zur Instantiierung von Objekten<br />

durch sogenannte Konstruktoren an.<br />

Zusammenfassung 7.1 (Klasse):<br />

Eine Klasse ist ein Datentyp, der sich aus Datenkomponenten, sogenannten Attributen,<br />

zusammensetzt und der Operationen zur Manipulation der Datenkomponenten,<br />

sogenannte Methoden, anbietet. Zusätzlich gibt es Operationen zur Erzeugung von<br />

Objekten, sogenannte Konstruktoren.<br />

7.2.1 Beispiel: Studierende<br />

Quellcode 7.2 zeigt eine Klassendeklaration für die Studierendenobjekte aus Abschnitt 7.1 in<br />

Java. Die Klassendeklaration beginnt mit dem Schlüsselwort class, gefolgt von dem Klassennamen,<br />

in unserem Fall Studierende. Der darauf folgende Rumpf der Klassendeklaration, der<br />

durch geschweifte Klammern „{... }“ eingeschlossen wird, umfasst die drei Gruppen von Bestandteilen,<br />

durch welche die Funktionalität der Objekte der Klasse festlegt wird: Attribute, Konstruktoren<br />

und Methoden.<br />

Üblicherweise beginnt eine Klassendeklaration mit der Auflistung der Attribute. Es folgen die<br />

Konstruktoren und schließlich die Methoden. Aus didaktischen Gründen werden wir bei der<br />

folgenden Beschreibung des Quellcodes 7.2 die Konstruktoren zuletzt erklären.

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

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!