03.11.2012 Aufrufe

Informatik I - Institut für Informatik - Christian-Albrechts-Universität zu ...

Informatik I - Institut für Informatik - Christian-Albrechts-Universität zu ...

Informatik I - Institut für Informatik - Christian-Albrechts-Universität zu ...

MEHR ANZEIGEN
WENIGER ANZEIGEN

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

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

Deklaration sich anschließende ML-Anweisung schreibt sich in Java wie folgt:<br />

B.set credit(1000);<br />

B.deposit(500);<br />

B.deposit(300);<br />

B.withdraw(200);<br />

Um den nach der Ausführung dieses Programmstücks noch verfügbaren Geldbetrag bzw.<br />

den Kontostand <strong>zu</strong> bekommen, was in ML durch die Auswertung von Termen erfolgte,<br />

kann man in Java beide Werte mittels der Ausgabe-Anweisungen<br />

System.out.println(B.available());<br />

System.out.println(B.credit balance());<br />

am Bildschirm ausgeben. �<br />

Konstruktoren dienen da<strong>zu</strong>, <strong>zu</strong>sammen mit dem Operator new Instanzen einer Klasse –<br />

eventuell auch mit einem gewissen Anfangs<strong>zu</strong>stand – <strong>zu</strong> erzeugen. Sie tragen immer den<br />

Namen der Klasse, also etwa in Beispiel 6.1.5 account <strong>zu</strong>m Erzeugen einer Instanz der<br />

Klasse account. Für jede Klasse C stellt Java einen parameterlosen Standard-Konstruktor<br />

bereit, dessen Aufruf in new C() einen speziellen Anfangs<strong>zu</strong>stand festlegt (gegeben durch<br />

die Initialisierung von neu deklarierten Variablen; man vergleiche mit Abschnitt 6.3) und<br />

entsprechenden Speicherplatz reserviert. Konstruktoren mit Parametern müssen hingegen<br />

von Benutzer in der entsprechenden Klasse eigens deklariert werden. Erweitert man etwa<br />

die Klasse account von Beispiel 6.1.5 um den Konstruktor<br />

account (int n) { cr = n; },<br />

so wird durch account B = new account(1000); eine Instanz B von account erzeugt,<br />

dessen Überziehungskredit mit 1000 Geldeinheiten initialisiert ist. Wir wollen nicht näher<br />

auf Konstruktoren eingehen, da sie in dieser Vorlesung nicht mehr verwendet werden. Ihre<br />

Bedeutung wird sich erst in <strong>Informatik</strong> II ergeben.<br />

An dieser Stelle ist noch eine wichtige Bemerkung <strong>zu</strong>r praktischen Ausführung von Java-<br />

Programmen angebracht. Etwas genauer gehen wir auf die Benut<strong>zu</strong>ng des Java-Systems<br />

in Abschnitt 6.5 ein.<br />

6.1.6 Bemerkung (<strong>zu</strong>r Ausführung von Java-Programmen)<br />

Wir gehen davon aus, daß das gesamte Java-Programm in eventuell mehreren Dateien<br />

untergebracht ist, in jeder Datei genau eine Klasse als sichtbar erklärt ist und alle Dateien<br />

übersetzt sind. Eine sichtbare Klasse wird <strong>zu</strong>r Hauptprogramm-Klasse erklärt, indem<br />

sie eine Methode der folgenden Form enthält:<br />

public static void main (String[] args) { ... }<br />

Hier ist main der fest vorgeschriebene Name. Die – ebenfalls fest vorgeschriebenen – beiden<br />

Modifizierer public und static der Methode besagen, daß main sichtbar ist bzw.<br />

192

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

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!