Java Tutorial interaktiv — Programmieren lernen mit Java
Erstellt von Bradley Kjell, Central Connecticut State University
Übersetzung: Heinrich Gailer (Rechtliche Hinweise)
Zuletzt geändert am 30.06.2025
Bradley Kjells interaktives Java Tutorial
Das ist ein erster Kurs in Informatik, der die Programmiersprache Java verwendet. Er behandelt die grundlegenden Konzepte des Programmierens und der Informatik.
Den größten Nutzen werdet Ihr von dem Kurs haben, indem Ihr diese Aufzeichnungen interaktiv durchgeht, über die Fragen am Ende einer jeden Seite nachdenkt und sie beantwortet.
Es gibt ungefähr 20 Seiten (manchmal mehr) pro Kapitel.
Wenn Ihr pro Seite 3 Minuten benötigt, braucht Ihr für jedes Kapitel ca. 60 Minuten. Oder mehr, wenn Ihr die Programmieraufgaben macht.
Diese Aufzeichnungen setzen voraus, dass Ihr auf Eurem Computer eine Java Entwicklungsumgebung installiert habt.
Installationshinweise Java SE (Standard Edition) Development Kit (JDK)
Ladet Euch das JDK 21 herunter (über die unten stehenden Links). Das ist eine LTS (Long Time Support) Version und erhält Updates bis September 2026. Bei der aktuellen Version JDK 24 endet der Support bereits im September 2025.
Klickt dazu auf den Link JDK 21. Der grüne Balken unterhalb des JDKs 24 wandert dann unter den Link JDK 21 (siehe Grafik).

Installationshinweise für Windows
Das Java SE Development Kit (JDK) findet Ihr bei oracle.com. Klickt auf den Link Windows. Der grüne Balken unterhalb von Linux wandert dann unter Windows. Ladet Euch den Windows x64 msi Installer herunter.
Installationshinweise für den Mac
Auf der Download Seite von Oracle gibt es zwei Installer Versionen für den Mac.
Welche Ihr benötigt, hängt vom Prozessor Eures Mac ab.
Ab bestimmten Modellen, die Ende 2020 eingeführt wurden, begann Apple, anstelle von Intel-Prozessoren Apple-Chips (auch als Apple Silicon Prozessor bezeichnet) in Mac-Computern einzusetzen. Eine Übersicht findet Ihr bei support.apple.com.
Habt Ihr einen Apple-Chip bzw. Apple Silicon Prozessor, dann braucht Ihr den Arm64 DMG Installer.
Habt Ihr einen älteren Mac mit Intel Prozessor, dann braucht Ihr den x64 DMG Installer.
Wie Ihr den Prozessortyp Eures Mac bestimmen könnt, seht Ihr auf dieser Website: www.howtogeek.com .
Das Java SE Development Kit (JDK) findet Ihr bei oracle.com. Klickt auf den Link macOS. Der grüne Balken unterhalb von Linux wandert dann unter macOS. Ladet Euch die entsprechende Installer Version herunter.
Installationshinweise für Linux
Einen ausführlichen Guide für die Installation des JDKs für die verschiedenen Linux Platformen findet Ihr bei docs.oracle.com (englisch). Wer möchte kann sich von DeepL beim Übersetzen helfen lassen.
Entwicklungsumgebung Apache NetBeans
Nachdem Ihr Java installiert habt, könnt Ihr Euch über den folgenden Link die Entwicklungsumgebung Apache Netbeans herunterladen und installieren. Wählt für Windows die .exe und für Mac die .pkg Datei aus. Die anderen 3 Dateien sind für Linux (.deb Debian GNU/Linux, .rpm Linux Standard Base und das snap package arbeitet distributionsübergreifend): Apache NetBeans herunterladen.
Apache NetBeans Tutorial
Wie man mit NetBeans ein Java Projekt anlegt und die ersten Java Programme erstellt wird in diesen Aufzeichnungen im Kapitel 5 beschrieben. Dort findet Ihr ein NetBeans Tutorial.
Die aktuellste Version des Tutorials von Bradley Kjell findet Ihr auf der Website von programmedlessons.org.
Eine ältere Version von Bradley Kjells Java Tutorial findet Ihr hier.
Um die interaktiven Elemente nutzen zu können, muss in Eurem Browser JavaScript aktiviert sein.
Danken möchte ich Herrn Dr. Matthias Riege für die Übersetzung der Kapitel 21 und 22.
Was Ihr über Java Programmierung wissen solltet!
Wo wird Java eingesetzt?
- Maestro Mars Rover controller. Im Jahr 2004 war Java die erste Programmiersprache, mit der die Menschheit ihre planetarische Reichweite erweitert hat.
- JavaFX Deep Space Trajectory Explorer. Sie planen eine Raumfahrt? Dann werden Sie Tools von a.i.solutions brauchen.
- JMARS and JMoon ist seit 2003 öffentlich verfügbar und wird immer noch häufig von NASA Wissenschaftler verwendet.
- Neugierig geworden? Klickt auf den Link The 25 greatest Java apps ever written in Java. (Wer möchte kann sich von DeepL beim Übersetzen helfen lassen.)
Wer mehr über diese Aufzeichnungen erfahren möchte, kann die FAQ (häufig gestellte Fragen) lesen.
Was sollte ich lesen, wenn ich mit diesen Aufzeichnungen fertig bin?
Die Seite mit den häufig gestellten Fragen und Antworten (FAQ — frequently asked questions).
Inhaltsverzeichnis
Teil 1: Hardware und Software |
||||
| Kapitel 1 | Einführung in Computersysteme | Quiz | Vokabeltraining Test | |
| Kapitel 2 | Analoge und binäre Signale | Quiz | Vokabeltraining Test | |
| Kapitel 3 | Computerspeicher | Quiz | Vokabeltraining Test | |
| Kapitel 4 | Der Prozessor | Quiz | Vokabeltraining Test | |
Teil 2: Java Programme ausführen |
||||
| Kapitel 5 | Einführung in Java mit NetBeans | Test | ||
| Kapitel 6 | Kleine Java Programme | Test | ||
Teil 3: Daten |
||||
| Kapitel 8 | Primitive Datentypen | Quiz | Aufgaben Vokabeltraining | |
| Kapitel 9A | Variablen und Zuweisungsanweisungen | Quiz | Aufgaben Vokabeltraining | |
| Kapitel 9B | Ausdrücke und arithmetische Operatoren | Quiz | Aufgaben Vokabeltraining | |
| Kapitel 9C | Objektdaten | Quiz | Aufgaben | |
| Kapitel 10 | Input und Output | Test | Aufgaben | |
| Kapitel 11 | Gleitpunkt und die Klasse Math |
Test | Aufgaben | |
Teil 4: Bedingte Anweisungen und Schleifen |
||||
| Kapitel 12 | Die if-Anweisung |
Quiz | Aufgaben | |
| Kapitel 13 | Die einzweigige if-Anweisung |
Quiz | Aufgaben | |
| Kapitel 14 | Boole’sche Ausdrücke | Test | Aufgaben | |
| Kapitel 15 | Schleifen und die while-Anweisung |
Test | Aufgaben | |
| Kapitel 16 | Zählschleifen | Quiz | Aufgaben | |
| Kapitel 17 | Beispiele von Zählschleifen | Test | Aufgaben | |
| Kapitel 18 | Überwachungsgesteuerte Schleifen | Test | Aufgaben | |
| Kapitel 19 | Ergebnisgesteuerte Schleifen | Quiz | Aufgaben | |
Teil 5: Weitere Spracheigenschaften von Java |
||||
| Kapitel 20 | Random — Zufallszahlen | Quiz | Aufgaben Test | |
| Kapitel 21 | Inkrement, Dekrement (und Zuweisungsoperatoren) | Quiz | ||
| Kapitel 22 | Boole’sche Ausdrücke (und Short-Circuit-Operatoren) | Test | Aufgaben | |
| Kapitel 23 | Die for-Anweisung |
Quiz | Aufgaben | |
| Kapitel 24 | Der konditionelle Operator und die switch-Anweisung |
Quiz | Aufgaben | |
| Kapitel 24B | Die do-Anweisung |
Quiz | Aufgaben | |
Teil 6: Objektorientierte Programmierung |
||||
| Kapitel 25 | Objekte | Quiz | Aufgaben | |
| Kapitel 26 | Objektreferenzen | Quiz | Aufgaben | |
| Kapitel 27 | Mehr über Objekte und Klassen | Test | Aufgaben | |
| Kapitel 28 | Parameter von Methoden | Test | Aufgaben | |
| Kapitel 29 | Strings und Objektreferenzen | Quiz | Aufgaben | |
| Kapitel 30 | Eigene Klassen definieren | Test | Aufgaben | |
| Kapitel 31 | Klassendesign Beispiel (Meilen pro Gallone) | Test | Aufgaben | |
| Kapitel 32 | Klassendesign-Beispiel (Bankkonto) | Test | ||
| Kapitel 33 | Kapselung und Zugriffsmodifizierer | Quiz | Aufgaben | |
| Kapitel 34A | Parameter, Überladen, Lokale Variablen | Test | ||
| Kapitel 34B | Objekt-Parameter | Quiz | ||
| Kapitel 35 | Objekte, die Objekte enthalten | Test | Aufgaben | |
| Kapitel 36 | Klassenvariablen (static) |
Quiz | Aufgaben | |
Teil 7: Arrays |
||||
| Kapitel 37 | Arrays | Quiz | Aufgaben | |
| Kapitel 38 | Gebräuchliche Array Algorithmen | Quiz | Aufgaben | |
| Kapitel 39 | Objekte, die Arrays enthalten | |||
| Kapitel 40 | Arrays als Parameter | Test | Aufgaben | |
| Kapitel 41 | Methoden, die Arrays ändern | Quiz | ||
| Kapitel 42 | Arrays von Objekten | Quiz | ||
| Kapitel 43 | Lineare Suche | Aufgaben | ||
Teil 8: Fortgeschrittene objektorientierte Programmierung |
||||
| Kapitel 50 | Einführung in Vererbung | Quiz | Aufgaben | |
| Kapitel 51 | Abstrakte Klassen und Polymorphie | Quiz | Aufgaben | |
| Kapitel 52 | Mehr über Polymorphie | Quiz | Aufgaben | |
| Kapitel 53 | Schnittstellen (Interfaces) | Quiz | ||
| Kapitel 53B | Die Schnittstelle Comparable | Quiz | Aufgaben | |
Teil 9: Grafische Benutzeroberflächen Programmierung |
||||
| Kapitel 55 | Einführung in GUI-Programmierung | Quiz | ||
| Kapitel 56 | Swing Frames | Quiz | ||
| Kapitel 57 | Einem Frame Buttons hinzufügen | Quiz | ||
| Kapitel 59 | Buttons und Action-Events | Quiz | Aufgaben | |
| Kapitel 60 | Swing Textfelder und Labels | Quiz | Aufgaben | |
| Kapitel 61 | Komponenten Layout | Quiz | Aufgaben | |
| Kapitel 62 | JPanel und BoxLayout | Quiz | ||
| Kapitel 63 | Radio-Buttons und BorderLayout | Aufgaben | ||
| Kapitel 64 | JSliders und Change-Events | Aufgaben | ||