Java Reference
In-Depth Information
Struktur der Klasse
Bruch
im Hauptspeicher angelegt und über den Variablennamen
b
zugreifbar gemacht. Im Hauptspeicher entsteht quasi ein Abbild des Dateiinhalts.
Danach wird die nächste Anweisung im Programm abgearbeitet
. In diesem Fall wird
dem Zähler unseres Bruchs der Wert 3 und dem Nenner der Wert 4 zugewiesen.
2
Mit der Anweisung
b.ausgeben();
wird nun auf das Abbild im Hauptspeicher zugegrif-
fen
und die Methode
ausgeben()
des Objekts
Bruch
abgearbeitet. In diesem Fall wird
also die Anweisung
System.out.print
ausgeführt. Nach Erreichen vom Ende des Metho-
denrumpfes wird mit der nächsten Anweisung im Programm fortgefahren
3
. In unse-
rem Fall ist damit das Ende des Methodenrumpfes von
main
erreicht, und das
Programm wird beendet.
4
Unser Beispiel zeigt nun auch, wie eine Methode benutzt wird. Grundsätzlich kann eine
Methode nur von einer Anwendung (einem Programm) aufgerufen werden. Wie beim
Zugriff auf ein Attribut eines Objekts richtet sich auch der Aufruf einer Methode immer
an ein bestimmtes Objekt einer Klasse. Ohne diese Zuordnung zu einer bestimmten
Instanz kann keine Methode aufgerufen werden. Die Syntax (Schreibweise) entspricht
der beim Zugriff auf ein Attribut. In der Form
variablenname.methodenname();
wird also zunächst der Variablenname und, mit einem Punkt abgetrennt, der Metho-
denname angegeben. In unserem Beispiel entsprechend
b.ausgeben()
, um den Bruch
mit dem Variablennamen
b
auszugeben.
Der Aufruf einer Methode erfolgt immer in drei Schritten:
Das aufrufende Programm wird unterbrochen.
Der Methodenrumpf wird ausgeführt.
Das aufrufende Programm wird mit der Anweisung nach dem Aufruf fortgesetzt.
Das aufrufende Programm kann so beliebig viele Aufrufe ein und derselben Methode
beinhalten (
Abbildung 6.2
). Es wird dementsprechend beliebig oft unterbrochen, um
immer wieder den gleichen Anweisungsteil der Methode zu durchlaufen (zweiter Auf-
ruf mit
und
).
5
6
Der Methodenrumpf stellt in der gleichen Bedeutung, wie wir ihn bisher kennengelernt
haben, einen Block dar. Innerhalb dieses Blocks sind beliebige Anweisungen (damit
auch alle Kontrollstrukturen) zulässig. Es können auch lokale Variablen definiert wer-
den, die dann nur innerhalb des Methodenrumpfes gültig sind. Sie werden bei jedem
Methodenaufruf neu erzeugt und nach dem Aufruf wieder zerstört. Zur Erinnerung: Die
Datenelemente des Objekts werden mit der Ausführung der
new
-Anweisung erstellt. Sie
werden erst zerstört, wenn das Objekt insgesamt aus dem Speicher entfernt wird.