Java Einführungs-Seminar

Das erste Standard-Beispiel

Java - Idee

Jede Programmiertechnik hat eine spezielle Kernaussage (ein Paradigma): ein Assembler-Programmierer kennt alle speziellen Fähigkeiten der jeweiligen CPU-Register, ein C-Programmierer schreibt immer eine Funktion, ein C++ Programmierer kennt Funktionen und Klassen, und schließlich kennt ein JAVA- Programmierer nur  noch Klassen. Alle Befehle und Variable stehen also innerhalb einer Klasse.
Klassen
Was eigentlich ist eine Klasse? Eine Klasse ist ein privater Datentyp. Allgemein besteht eine Klasse aus Elementen. Diese Elemente sind Daten (Eigenschaften, die zusammen den Status der Klasse oder eines Objektes bilden) und Operationen (den Satz der Methoden, die zusammengenommen das Verhalten bilden). Damit wird der Speicherbedarf und sein interner Aufbau zusammen mit der Menge der erlaubten Operationen selbst definiert. Bei einem Basisdatentyp wie z.B. "int" ist beides in der Sprache fest vorgegeben. Die mit einer Klasse angelegten Variablen sind die Objekte.

Ein privater Datentyp ist ein Modell eines Stücks der Wirklichkeit. Ein Programm ist so ein Modell und wird damit über eine Klasse beschrieben. Schreiben wir ein "HelloWorld"-Programm, schreiben wir also zuerst eine "HelloWorld"-Klasse. Klassen können Elemente besitzen, die sich später in jedem einzelnen Objekt wiederfinden (Objekt-Elemente), und sie können Elemente enthalten, die für die Klasse gelten und nicht in jedem Objekt wiederholt werden (Klassenelemente).

Pakete (packages)

Ein Programm besteht aus einer oder mehr Klassen, die in einem (Klassen-) Paket zusammengefaßt werden. Gibt man kein Paket (package) an, wird ein Standard-Paket angenommen.In einem Paket können wiederum Sub-Pakete oder Klassen enthalten sein. 
Standard-Klassen
Jede Klasse in Java kann ein Klassenpaket automatisch benutzen, da es immer zwangsweise bei einer Übersetzung durchsucht wird: "java.lang". Wir verwenden im Beispiel die Paket "System" mit der Klasse "out" und der Methode "println()". (Die Begriffe werden gleich erklärt.)
Objekte
Ein Objekt ist eine Variable, die auf der Basis einer Klasse angelegt wurde. Es kann also viele verschiedene Objekte (auch Instanzen genannt) einer Klasse geben.

Hello-World-Beispiel

Lassen wir erst einmal die vielen, möglicherweise neuen, Begriffe beiseite und arbeiten praktisch. 
  1. Starten Sie einen Editor (Notepad, joe, JEdit). Schreiben Sie den unten angegebenen Quelltext ab und speichern ihn in einer Datei, die exakt "HelloWorld.java" heißt.
  2. Übersetzen Sie die Datei mit "javac HelloWorld.java" (Ihre Eingabe auf der Kommandozeile).
  3. Starten sie den Interpreter und laden die Programmklasse mit: "java HelloWorld" (Klassenname).

// Das einfachste Programm
// walter digital, 2000

import java.lang.*;     // Paket java.lang wird immer automatisch eingebunden

class HelloWorld        // Alles ist in einer Klasse, hier Programm-Klasse
{
public static void main (String args[])      // öffentliche Klassenmethode
        {
        System.out.println("Hello World !"); // Package System, Klasse out, Methode println()
        }
}


In unserem ersten Beispiel erstellen wir eine einfache Klasse in einem Standard-Paket (ohne package-Angabe). Der Klassenname ist unser Programmname. Die Klasse enthält nur eine Methode: main(). Die main()-Methode liefert keine Rückgabe, also "void". Sie gilt nicht nur für Objekte sondern auch für die Klasse, also "static". Und schließlich soll main() außerhalb der Klasse sichtbar sein, also "public". "java" wird diese Methode "main()" in der als Argument übergebene Klasse starten.

Die Methode, die unseren Text ausgibt, gehört im Paket (package) "java.lang" zur Klasse "System". Für das Objekt "out" in der Klasse "System" rufen wir die Methode "println()" mit dem Text als Parameter auf. Wir rufen also das Unterprogramm "println()" auf.

Der aus Unix/DOS/C bekannte Begriff "Standardausgabe" wir hier durch das Objekt "out" repräsentiert. 

Vorsicht: das Beispiel setzt voraus, dass das Betriebssystem eine Kommandozeile kennt. Betiebssysteme mit einer reinrassigen graphischen Oberfläche können dieses Programm nicht anzeigen. 



Das Seminar wurde entwickelt von Walter Herglotz, München, 1999.
© Copyright "Walter digital", München, Walter Herglotz, 1999.