Skip to content

Kapitel 3: Erstes Java-Programm im Detail

🎯 Lernziele

In diesem Kapitel lernst du:

  • Den Ablauf vom Schreiben bis zum Ausführen eines Java-Programms
  • Den Aufbau eines Java-Programms (Klassen, main-Methode, Ausgabe)
  • Die Bedeutung jeder Zeile im "Hello World!" Programm
  • Häufige Anfängerfehler und wie man sie vermeidet

3.1 Ablauf: Java-Programm schreiben, kompilieren, ausführen

🔄 Der komplette Ablauf (wichtig!)

1. Quellcode schreiben (.java Datei)

2. Kompilieren (javac Befehl) → Erzeugt .class Datei (Bytecode)

3. Ausführen (java Befehl) → JVM führt Bytecode aus

4. Ausgabe im Terminal/Konsole

📝 Schritt für Schritt (manuell ohne IDE)

Schritt 1: Quellcode schreiben

bash
# Erstelle eine Datei namens HelloWorld.java
# (mit einem beliebigen Texteditor wie Notepad, vim, nano)

Inhalt der Datei:

java
public class HelloWorld {
    public static void main(String[] args) {
        System.out.println("Hello World!");
    }
}

Schritt 2: Kompilieren

bash
javac HelloWorld.java
# Erzeugt: HelloWorld.class (Bytecode)

Schritt 3: Ausführen

bash
java HelloWorld
# Ausgabe: Hello World!

🤔 Was passiert im Hintergrund?

SchrittBefehlWas passiert
SchreibenTexteditor.java Datei wird erstellt (Quellcode)
Kompilierenjavac.java.class (Bytecode, maschinenunabhängig)
AusführenjavaJVM liest .class und führt es aus

3.2 Klassen, Hauptmethode, Ausgabeanweisung erklärt

🏗️ Grundstruktur eines Java-Programms

java
public class HelloWorld {              // 1. Klassendeklaration
    public static void main(String[] args) {   // 2. Hauptmethode (main)
        System.out.println("Hello World!");    // 3. Ausgabe
    }
}

🔍 Zeile für Zeile erklärt

1. Klassendeklaration

java
public class HelloWorld {
  • public: Zugriffmodifikator (öffentlich zugänglich)
  • class: Schlüsselwort für eine Klasse
  • HelloWorld: Name der Klasse (muss exakt mit Dateinamen übereinstimmen!)
  • { }: Code-Block der Klasse

→ In Java ist alles in Klassen organisiert!

2. Hauptmethode (main)

java
public static void main(String[] args) {
  • public: Öffentlich zugänglich
  • static: Keine Objekterstellung nötig (Klassenmethode)
  • void: Gibt keinen Wert zurück
  • main: Name der Methode (Einstiegspunkt!)
  • String[] args: Parameter (Kommandozeilenargumente)
  • { }: Code-Block der Methode

→ Die main-Methode ist der Startpunkt jedes Java-Programms!

3. Ausgabeanweisung

java
System.out.println("Hello World!");
  • System: Klasse aus der Java-Standardbibliothek
  • out: Statisches Attribut (Ausgabestrom)
  • println(): Methode zum Ausgeben einer Zeile (mit Zeilenumbruch)
  • "Hello World!": String-Parameter (Text in Anführungszeichen)
  • ;: Semikolon (Befehlsende in Java!)

println() gibt Text in der Konsole aus!

🆚 println() vs print()

java
System.out.print("Hallo ");
System.out.print("Welt!");
// Ausgabe: Hallo Welt! (in einer Zeile)

System.out.println("Hallo ");
System.out.println("Welt!");
// Ausgabe:
// Hallo
// Welt!

3.3 Grundstruktur eines Java-Programms

📐 Standard-Template für alle Java-Programme

java
// 1. (Optional) Package-Deklaration
package com.beispiel;

// 2. (Optional) Import-Anweisungen
import java.util.Scanner;

// 3. Klassendeklaration
public class KlassenName {
    
    // 4. Hauptmethode (Einstiegspunkt)
    public static void main(String[] args) {
        // 5. Dein Code hier!
        System.out.println("Mein Programm!");
    }
    
    // 6. (Optional) Weitere Methoden
    public static void meineMethode() {
        // ...
    }
}

📋 Die wichtigsten Bestandteile

BestandteilErklärungPflicht?
PackagePaket (Ordnerstruktur)Nein (aber empfohlen)
ImportEinfügen anderer KlassenNur wenn benötigt
KlasseContainer für CodeJa!
main-MethodeEinstiegspunktJa! (für ausführbare Programme)
CodeDeine AnweisungenJa!

3.4 Häufige Anfängerfehler (Groß-/Kleinschreibung, Semikolon, Dateinamen)

❌ Fehler 1: Groß-/Kleinschreibung (Case Sensitivity)

Falsch:

java
Public class HelloWorld {   // 'Public' statt 'public'
    public static void Main(String[] args) {  // 'Main' statt 'main'

Richtig:

java
public class HelloWorld {
    public static void main(String[] args) {

→ Java ist case-sensitive! mainMain

❌ Fehler 2: Semikolon vergessen

Falsch:

java
System.out.println("Hello World!")  // Kein Semikolon!

Richtig:

java
System.out.println("Hello World!");  // Semikolon am Ende

→ Jede Anweisung in Java muss mit ; enden!

❌ Fehler 3: Dateiname stimmt nicht mit Klassennamen überein

Falsch:

  • Datei: Helloworld.java (kleines 'w')
  • Code: public class HelloWorld { (großes 'W')

Richtig:

  • Datei: HelloWorld.java
  • Code: public class HelloWorld {

→ Bei öffentlichen Klassen muss der Dateiname exakt mit dem Klassennamen übereinstimmen!

❌ Fehler 4: Geschweifte Klammern nicht geschlossen

Falsch:

java
public class HelloWorld {
    public static void main(String[] args) {
        System.out.println("Hello World!");
    // }  ← Fehlt!
}

Richtig:

java
public class HelloWorld {
    public static void main(String[] args) {
        System.out.println("Hello World!");
    }  // ← Geschlossen!
}

❌ Fehler 5: Anführungszeichen nicht geschlossen

Falsch:

java
System.out.println("Hello World!);  // Fehlendes "

Richtig:

java
System.out.println("Hello World!");  // Korrekt geschlossen

🛠️ Fehlersuche: Typische Fehlermeldungen verstehen

FehlermeldungBedeutungLösung
error: class HelloWorld is public, should be declared in a file named HelloWorld.javaDateiname passt nicht zum KlassennamenDatei umbenennen!
error: ';' expectedSemikolon fehltSemikolon hinzufügen
error: cannot find symbolTippfehler oder Variable nicht deklariertÜberprüfe Schreibweise
Exception in thread "main" java.lang.NoSuchMethodError: mainKeine main-Methode gefundenmain-Methode hinzufügen

📝 Zusammenfassung

In diesem Kapitel hast du gelernt:

  • ✅ Den Ablauf: Schreiben → Kompilieren → Ausführen
  • ✅ Aufbau eines Java-Programms (Klasse, main-Methode, Ausgabe)
  • ✅ Bedeutung jeder Zeile im "Hello World!" Programm
  • ✅ Häufige Anfängerfehler und deren Lösungen

💡 Merksatz für Anfänger

"Jede öffentliche Klasse braucht eine eigene Datei, jedes Statement braucht ein Semikolon, und die main-Methode ist der Eintrittspunkt!"

🎯 Nächste Schritte

Im nächsten Kapitel lernst du:

  • Variablen und Datentypen (Kapitel 4)
  • Wie man Daten speichert und verarbeitet
  • Die verschiedenen Datentypen in Java

Bereit für mehr? Los geht's! 🚀


📚 Weiterführende Links:

💬 Fragen?
Hinterlasse einen Kommentar!

Frei für alle Anfänger