Java-Kurs: Vom Algorithmus zum Programm
Willemers Informatik-Ecke
Erste Schritte Variablen

Algorithmus

Beispiel: Berechnung von Fläche und Umfang eines Rechtecks:
Die Breite ist 3
Die Länge ist 4
Die Fläche ergibt sich aus Breite mal Länge.
Der Umfang ergibt sich durch 2 mal Breite plus 2 mal Länge.

Umsetzung in die Sprache Java

Schrittweise werden wir uns dem fertigen Programm nähern:

Zunächst belegen wir die Variablen breite und laenge mit den Werten. Das Gleichheitszeichen weist den rechts daneben stehenden Ausdruck, dem links danebenstehenden L-Value zu.

        breite = 3;
        laenge = 4;
Die Variablen flaeche und umfang errechnen sich durch Multiplikation und Addition. Das Pluszeichen steht für die Addition und der Stern nicht nur zur Vorweihnachtszeit für die Multiplikation.
        breite = 3;
        laenge = 4;
        flaeche = breite * laenge;
        umfang = 2*breite + 2*laenge;
Die Variablen müssen in Java vor der ersten Verwendung definiert werden, hier als ganzzahlige Werte. Der Datentyp für solche Werte heißt int.
        int breite, laenge, flaeche, umfang;
        breite = 3;
        laenge = 4;
        flaeche = breite * laenge;
        umfang = 2*breite + 2*laenge;
Prinzipiell ist der aktive Teil des Programms fertig. Allerdings stehen in Java solche Anweisungen nicht einfach nur herum, sondern befinden sich in einer Methode oder Funktion.

Die Anweisungen und Variablendefinitionen werden durch eine Methode main umschlossen. Diese Methode ist auch der Startpunkt für die Ausführung.

Die geschweiften Klammern { und } umfassen einen Block, der verschachtelt sein kann. Hier definieren sie den Anfang und das Ende der Methode main.

    public static void main(String[] args) {
        int breite, laenge, flaeche, umfang;
        breite = 3;
        laenge = 4;
        flaeche = breite * laenge;
        umfang = 2*breite + 2*laenge;
    }
Die Worte public, static, void, String und andere merkwürdige Zeichen müssen Sie erst einmal hinnehmen wie die Zaubersprüche von Harry Potter: Wir wissen nicht genau, was sie bedeuten, aber sie scheinen zu funktionieren.

Ein kurzer Vorgeschmack wird aber hoffentlich mehr erläutern als verwirren:

In Java ist alles Klasse. Also muss das Programm davon umgeben sein. Was eine Klasse genau tut, ist Bestandteil der objektorientierten Programmierung. Das ist ein unglaublich interessantes Thema, auf das Sie sich in Ruhe freuen dürfen.

public class Rechteck {
    public static void main(String[] args) {
        int breite, laenge, flaeche, umfang;
        breite = 3;
        laenge = 4;
        flaeche = breite * laenge;
        umfang = 2*breite + 2*laenge;
    }
}
Das Programm ist nun in einem Zustand, in dem es übersetzt werden kann. Leider sieht man nichts.

Bildschirmausgaben

System.out ist der Ausgabekanal. Er verweist auf die Konsole. An den Ausgabekanal hängen wir mit einem Punkt die Methode für die Ausgabe, print bzw. println.
System.out.print("Fläche: "); // Beschriftung in Anführungszeichen
System.out.println(flaeche);  // Variablenausgabe und Zeilenabschluss
System.out.print("Umfang: ");
System.out.println(flaeche);
Kleiner Trick: Wenn ein String (Text in Anführungsstrichen) beteiligt ist, können mehrere Elemente in einem print ausgegeben werden, indem sie mit + verbunden werden.

System.out.print("Fläche: " + flaeche + " qm");
Das Rechteck-Programm wird also folgendermaßen ergänzt:
public class Rechteck {
    public static void main(String[] args) {
        int breite, laenge, flaeche, umfang;
        breite = 3;
        laenge = 4;
        flaeche = breite * laenge;
        umfang = 2*breite + 2*laenge;
        System.out.print("Fläche: " + flaeche);
        System.out.print(" Umfang: " + umfang);
    }
}

Benutzereingabe

Der Eingabekanal (Tastatur) ist System.in also das Gegenstück des Ausgabekanals System.out. Die Initialisierung von breite und laenge wird durch die Eingabe ersetzt:
public class Rechteck {
    public static void main(String[] args) {
        int breite, laenge, flaeche, umfang;
        java.util.Scanner eingabe = new java.util.Scanner(System.in);
        laenge = eingabe.nextInt();
        breite = eingabe.nextInt();
        flaeche = breite * laenge;
        umfang = 2*breite + 2*laenge;
        System.out.print("Fläche: " + flaeche);
        System.out.print(" Umfang: " + umfang);
    }
}

Programmerstellung in Eclipse

Um das Programm zu starten, benötigt man eine Entwicklungsumgebung. Dazu sollte Eclipse installiert sein.

Für das Programm legen Sie ein Projekt mit einer Klasse an. Die Klasse sollte Rechteck heißen und der Source-Code eingegeben werden.

Compileraufruf und Fehlerbehandlung

Bei jedem Speichern (durch die Tastenkombination [Strg]+[S]) wird der Compiler aufgerufen. Tippfehler ahndet er durch Unterstreichen des Fehlers in rot. Wenn Sie die Maus darüber still stehen lassen, erscheint im Tooltipp seine Klage. Sie können stattdessen auch auf den kleinen roten Kreis links neben dem Fehler klicken.

Neben der Fehlermeldung schlägt Eclipse auch Korrekturen vor. Viele davon sind so sinnvoll, dass man oft schneller vorwärts kommt, wenn man Fehler provoziert und sie dann von Eclipse reparieren und damit den Code generieren lässt. Aber vorsicht: Nicht alle Reparaturvorschläge führen zu einer sinnvollen Lösung.

Starten

Es gibt mehrere Varianten, das fertige Programm zu starten.

Benutzereingaben

Wenn Sie eine Eingabe in das Programm machen wollen, muss zunächst das Teilfenster namens Console den Fokus haben. Dazu klicken Sie einfach hinein. Nun können Sie dort etwas eintippen.

Video


Erste Schritte Variablen