Die Methode: wiederholbarer Programm-Baustein

MethodenIntro

Mupples bringt Vorübungen und Buchauszüge von J. Anton Illik: „Erfolgreich programmieren mit Java – vom Einsteiger zum Könner„, wenn Sie für die HFU-Vorlesung und Übung hilfreich sind. Ziel dabei ist es auch, Ihre konstruktive Kritik in den Kommentaren abzuholen. Gerne können wir in der Vorlesung und Übung auch darüber diskutieren. In diesem Post geht es um Java-Methoden als Java-Programm-Bausteine. Im Zusammenhang mit Methoden wird auch von der „Funktionalen Abstraktion“ gesprochen.

Neben den Kontrollstrukturen sind die Java-Methoden eine zentrale Einflußgröße beim Programmieren: Algorithmen, die öfter als einmal gebraucht werden, formuliert die Programmierer/in am Besten in Form einer Methode als Programm-Baustein (Methoden-Definition), der immer, wenn er gebraucht wird aufgerufen werden kann (Methoden-Aufruf), anstatt diesen Programmbaustein erneut schreiben zu müssen. Sehr praktisch.

Im Grunde kennen wir ja schon Methoden-Definitionen: in unseren Übungen haben wir stets eine Methode main() in unseren Klassen definiert. Wenn wir dann unserer Entwicklungsumgebung Eclipse den Auftrag „Run as -> Java Application“ gegeben haben, hat dieser Auftrag dafür gesorgt, dass die Methode main() in unserer Übungsklasse gestartet und ausgeführt wurde.

Damit hätten wir gleich auch die Besonderheit der Methode main(): wir brauchen die Methode main(), damit die Java-Applikation gestartet werden kann. Ausserdem haben wir uns den Namen main nicht ausgesucht, sonder haben uns an eine Konvention gehalten: Start-Methoden heißen main.

Alle anderen Methoden können wir so benennen wie es zweckmäßig ist. Namen sollen ja „sprechend“ sein, d.h. der Name der Methode soll auf den Verwendungszweck einen Hinweis geben.

Sagen wir mal, die Method soll den Programmbenutzer begrüßen, dann nennen wir kurzer Hand die Methode gruss(). Dann können wir die Methode jedesmal aufrufen, wenn wir den Gruss ausgeben wollen, so wie wir das im folgenden Programm machen:

1 import java.text.SimpleDateFormat;
2 import java.util.Date;
3 
4 public class MethodenIntro {
5
6	public static void main(String[] args) {
7		gruss(); //Aufruf der Methode gruss()
8		Date zeitstempel = new Date();
9		SimpleDateFormat simpleDateFormat = 
10                      new SimpleDateFormat("dd.MM.yyyy");
11		System.out.println("Heute ist das Datum: " + 
12                       simpleDateFormat.format(zeitstempel));
13		gruss(); //Aufruf der Methode gruss()
14	} // End of main()
15	/**
16	 * Deklaration der Methode gruss()
17	 * Eine Methode muss deklariert sein,
18	 * bevor sie aufgerufen werden kann.
19	 */
20	public static void gruss() { 
21		System.out.println("Hallo, zusammen!");
22	} // End of gruss()
23 } // End of class

Bild: MethodenIntro (die Klasse MethodenIntro deklariert und ruft die Methode gruss() auf.

Nun mal der Reihe nach: in den Zeilen 7 und 13 wird die Methode gruss() aufgerufen. Damit das Funktionieren kann, wird in den Zeilen 20 bis 22 die Methode gruss() deklariert.

Bitte beachten Sie, dass die beiden Methoden main() und gruss() zwar innerhalb der Klasse MethodenIntro stehen, aber gewissermassen auf der gleichen Ebene untereinander stehen und nicht ineinander geschachtelt sind. Wir erwähnen das hier, weil es immer wieder Java-Einsteiger gibt, die von anderen Programmiersprachen her wissen, dass dies dort möglich und notwendig ist, Methoden ineinander zu schachteln (aber eben nicht in Java)!

Wenn die Methode gruss() einmal deklariert ist, können wir sie beliebig oft aufrufen. Ist doch praktisch! Wenn wir das jedesmal machen, häufig benutzte Programmteile in Methoden zu kapseln und wenn notwendig, dann nur noch aufrufen (anstatt die Codezeilen erneut zu schreiben), können wir eine Menge Zeit sparen.

Natürlich liegt hier ein besonders einfacher Fall vor und wir müssen noch einige Schritte zur Perfektion dieses methodischen Ansatzes (im wahrsten Sinne des Wortes) anbringen – dies ist aber nicht schwer zu schaffen. Wir schauen uns das noch an!

Die Zeilen 8 bis 12 im Beispiel MethodenIntro sind für das Verständnis des Methoden-Konzepts nicht weiter von Belang (abgesehen davon, dass Sie hier sehen, wie das aktuelle Datum besorgt, formatiert und ausgegeben wird). greedy for knowledge: lesen Sie in der Java-API-Beschreibung die zugehörige Doku zu den Klassen Date und SimpleDateFormat!

Ein Gedanke zu „Die Methode: wiederholbarer Programm-Baustein“

Schreibe einen Kommentar

Diese Website verwendet Akismet, um Spam zu reduzieren. Erfahre mehr darüber, wie deine Kommentardaten verarbeitet werden .