10.1 Starten des Debuggers
Wir werden den Debug-Prozess anhand von IntelliJ IDEA erkunden, was sehr sinnvoll und angenehm ist. Du wirst es gleich sehen.
In IntelliJ IDEA (Ultimate Edition erforderlich) kannst du dein Programm in zwei Modi starten:
Programmmodi | Symbol in der Leiste | Hotkeys |
---|---|---|
Normale Ausführung | ![]() |
Shift+F10 |
Start im Debug-Modus | ![]() |
Shift+F9 |
Den normalen Ausführungsmodus kennst du sicher schon: Das Programm startet, läuft und beendet sich. Der Debug-Modus hat jedoch einige Überraschungen parat.
Debug-Modus
Der Debug-Modus ermöglicht dir, dein ganzes Programm schrittweise auszuführen. Oder genauer gesagt, zeilenweise: Zeile für Zeile. Dabei kannst du die Werte der Variablen bei jedem Schritt des Programms beobachten (nach der Ausführung jeder Zeile Code). Und du kannst sogar deren Werte ändern!
Um die Kunst des Debuggens zu beherrschen, musst du drei Dinge lernen:
- Breakpoints
- Schrittweise Ausführung
- Anzeige der Variablenwerte
10.2 Breakpoints
Die IDE ermöglicht es dir, spezielle Markierungen im Code zu setzen – Breakpoints. Jedes Mal, wenn das Programm, das im Debug-Modus läuft, auf eine mit einem Breakpoint markierte Zeile stößt, wird es pausiert.
Um einen Breakpoint in einer bestimmten Zeile zu setzen, musst du einfach in IntelliJ IDEA links neben diese Zeile klicken. Beispiel:

Danach wird die Zeile mit einem Breakpoint markiert und IntelliJ IDEA markiert die gesamte Zeile rot:

Ein erneuter Klick mit der Maus auf die Leiste links neben dem Code entfernt den gesetzten Breakpoint.
Du kannst auch einfach einen Breakpoint in der aktuellen Zeile mit der Tastenkombination Ctrl+F8 setzen. Ein erneutes Drücken von Ctrl+F8 in einer Zeile mit einem Breakpoint entfernt diesen.
10.3 Programmstart im Debug-Modus
Wenn dein Programm mindestens einen Breakpoint enthält, kannst du es im Debug-Modus starten (Shift+F9 oder „Bug-Symbol“).
Nach dem Start im Debug-Modus läuft das Programm wie üblich. Sobald es jedoch auf eine mit einem Breakpoint markierte Codezeile stößt, pausiert es. Beispiel:

Im oberen Teil des Screenshots siehst du den Code des Programms mit zwei Breakpoints. Das Programm steht still auf Zeile 2 – markiert mit einer blauen Linie. Zeile 2 ist noch nicht ausgeführt: Es wurde noch nichts in die Konsole ausgegeben.
Im unteren Bildschirmbereich siehst du die Debugging-Panels: die Thread & Variables-Leiste, die Console (Bildschirmausgabe) und ein Set an Schaltflächen für den Debugging-Modus.
Du kannst dein Programm aus der Pause nehmen (es weiterlaufen lassen), indem du die Schaltfläche Resume Program auf der Leiste unten links drückst (oder die Taste F9).

Wenn du diese Schaltfläche (oder F9) drückst, setzt das Programm seine Arbeit fort, bis es den nächsten Breakpoint erreicht oder beendet wird. Das sehen wir nach dem Drücken der Schaltfläche:

Das Programm stoppte am zweiten Breakpoint, und in der Konsole sind die Worte Hello und and sichtbar – ein Hinweis darauf, dass von drei Bildschirmausgabezeilen nur zwei ausgeführt wurden.
10.4 Schrittweise Ausführung
Wenn dein Programm im Debug-Modus arbeitet, kannst du es auch schrittweise ausführen: ein Schritt – eine Zeile. Dafür gibt es zwei Hotkeys: F7 und F8 – jeder von ihnen führt die aktuelle Codezeile aus. Zuerst musst du jedoch dein Programm mit einem Breakpoint anhalten.
Wenn du dein Programm zeilenweise ausführen möchtest, musst du einen Breakpoint ganz am Anfang setzen – in der ersten Codezeile – und es im Debug-Modus starten.
Wenn das Programm gestoppt ist, kannst du mit der zeilenweisen Ausführung beginnen. Ein Drücken der F8-Taste – eine Zeile.
So wird unser Programm nach dem Anhalten und einem einmaligen Drücken der F8-Taste aussehen:

Die erste Zeile – print(“Hello”) wurde bereits ausgeführt, und die aktuelle Zeile ist die zweite. Du kannst im unteren Teil des Screenshots sehen, dass das Wort Hello bereits auf dem Bildschirm ausgegeben wurde.
10.5. Schrittweise Ausführung mit Einstieg in Funktionen
Wenn du eigene Funktionen im Programm hast und du möchtest, dass dein Programm im Debug-Modus nicht nur schrittweise ausgeführt wird, sondern auch innerhalb deiner Funktionen, dann musst du für den „Einstieg in die Funktion“ die Taste F7 drücken.
Angenommen, du führst das Programm schrittweise aus und bist nun bei der 5. Zeile stehengeblieben. Wenn du die Taste F8 drückst, wird IntelliJ IDEA einfach die fünfte Zeile ausführen und zur sechsten übergehen:

Wenn du jedoch F7 drückst, wird IntelliJ IDEA die Funktion hello() schrittweise ausführen:

Alles ganz einfach. Wenn dir nicht so wichtig ist, was und wie innerhalb der Methode passiert, drückst du F8, wenn es wichtig ist – F7 und führst den gesamten Code schrittweise aus.
GO TO FULL VERSION