Java Kurs
Java ist eine objektorientierte Programmiersprache. Selbst für einfachste Programme ist deshalb ein gewisses Grundgerüst in Form einer Klasse nötig. Um zunächst einfache Grundstrukturen von Java zu verstehen, wollen wir auf dieses Grundgerüst zunächst verzichten und nur einfache Java Methoden entwickeln.
Datentypen
Java unterscheidet zwischen primitiven Datentypen (einfachen) und Objekten. Einfache Datentypen sind etwa int, char, byte oder double. Auf diese können eine Reihe von Operationen angewendet werden. Wir können zum Beispiel ganz leicht damit rechnen:
<eval rows="1">3*5-12.5</eval>
Gib in das obere Feld auch eigene Gleichungen ein.
Ein weiteren Datentyp ist String, welcher Zeichenketten repräsentiert. Eine Zeichenkette wird in " eingeschlossen. String ist kein primitivenr Typ, jedoch wird er so häufig verwendet, dass auch für diesen eine Reihe von Operationen definiert wurden:
<eval rows="1">"Hallo" + " " + "Welt"</eval> <eval rows="1">"Pi ist " + 3.14</eval>
Methoden definieren
Um eine Methode aufzurufen verwenden wir den Methodennamen gefolgt von runden Klammern. Dies entspricht der Funktionsvorstellungen aus der Mathematik f(x). In diesem Fall ist x der Parameter zu dem uns die Funktion f einen Funktionswert berechnen soll.
Wir wollen uns eine Funktion für Pi definieren. Es handelt sich dabei um eine null-stellige Funktion, da unabhängig vom Parameter stets 3.14 als Funktionswert zurückgegeben wird. Das ist auch klar, denn Pi ist ja bekanntlich eine Konstante - also eine konstante Funktion.
Um eine Methode zu definieren müssen wir zunächst den Rückgabetyp festlegen. Für unsere Methode gibPi() wählen wir den primitiven Datentyp double aus. Es handelt sich dabei um eine reelle Zahl. Gefolgt wird dieser Rückgabetyp von einem Methodennamen. Diesen können wir beliebig wählen, sollten aber gewisse Regeln beachten. Ein Name darf zum Beispiel nicht mit einer Zahl beginnen.
Schau dir den nachfolgen Quelltext genau an und versuche dessen Bedeutung zu erahnen:
Eine solche Methode können wir nun genau wie f(x) aufrufen. Nachfolgendes Beispiel zeigt einen solchen Aufruf:
<eval rows="1">"Pi ist: " + gibPi()</eval>
Gehen wir nun einen Schritt weiter und definieren eine Methode mit Parameter. Parameter werden in den runden Klammern als kommaseparierte Liste angegben. Dabei wird wieder zunächst der Datentyp angegeben und von einem Variabelnamen gefolgt. Der Name kann wieder frei gewählt werden - jedoch ist es sinnvoll möglichst nachvollziehbare Namen zu vergeben.
Gegeben sei eine Methode zur Berechnung der Kreisfläche:
<eval rows="1">"Die Fläche eines Kreises mit r=5cm beträgt: " + KreisA(5) + "cm²"</eval>
Eine Methode besitzt in jedem Fall einen Methodennamen. Ein Parameter ist jedoch nicht zwingend nötig. Rufen wir etwa println()' ohne Parameter auf, so wird uns eine Leerzeile ausgegeben. Wir wollen nun eine eigene Methode entwickeln, die sich ganz ähnlich verhält. Statt einer Leerzeile soll unsere Methode sayHello()'' eine Nachricht ausgeben, wenn sie aufgerufen wird.
Einige Methoden besitzt zudem einen Rückgabewert. Denkt man etwa an sin(x), so soll uns eine reele Zahl als Ergebnis der Berechnung zurückliefern. Unsere Methode sayHello() führt keine Berechnung aus und wird somit auch keinen Rückgabewert benötigen. Dies wird in Java durch das Schlüsselwort void (leer) markiert.
Da Methoden in Java stets an ein Objekt oder Klasse gebunden sind, geben wir vor dem Methodennamen noch dessen Besitzer an. Ein solches Objekt ist System.out. System steht hier für eine Sammlung (Package) von Objekten und out ist ein vordefiniertes Objekt, welches uns die Ausgabe von Zeichen auf der Konsole ermöglicht.
Das Objekt out besitzt nun verschiedene Methoden wie etwa println (ln = Line = Zeile). Testen wir einen Aufruf dieser Methode mit einer Zeichenkette als Parameter: