Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

modul:archiv:m319:learningunits:lu09:lu09a-debuggeranwenden [2024/03/28 14:07] – angelegt - Externe Bearbeitung 127.0.0.1modul:archiv:m319:learningunits:lu09:lu09a-debuggeranwenden [2025/06/23 07:45] (aktuell) – ↷ Links angepasst, weil Seiten im Wiki verschoben wurden msuter
Zeile 75: Zeile 75:
 Um zu untersuchen, wie das Programm zur Laufzeit arbeitet, müssen wir seine Ausführung vor dem verdächtigen Codestück anhalten. Dies geschieht durch das Setzen von Breakpoints . Breakpoints geben die Codezeilen an, an denen das Programm angehalten wird, damit Sie seinen Zustand untersuchen können. Um zu untersuchen, wie das Programm zur Laufzeit arbeitet, müssen wir seine Ausführung vor dem verdächtigen Codestück anhalten. Dies geschieht durch das Setzen von Breakpoints . Breakpoints geben die Codezeilen an, an denen das Programm angehalten wird, damit Sie seinen Zustand untersuchen können.
 <WRAP center round box 40%> <WRAP center round box 40%>
-{{ :modul:m319:learningunits:lu09:debug_tutorial_setting_breakpoint.png?600 |}}+{{ de:modul:m319:learningunits:lu09:debug_tutorial_setting_breakpoint.png?600 |}}
  
 Klicken Sie auf die Zeilennummerierung um einen Breakpoint zu setzen. Klicken Sie auf die Zeilennummerierung um einen Breakpoint zu setzen.
Zeile 84: Zeile 84:
 Starten wir nun das Programm im Debug-Modus. Starten wir nun das Programm im Debug-Modus.
 <WRAP center round box 40%> <WRAP center round box 40%>
-{{ :modul:m319:learningunits:lu09:startdebug.png?600 |}}+{{ de:modul:m319:learningunits:lu09:startdebug.png?600 |}}
 Rechtsklicken Sie dazu auf den Play-Button neben der ''main''-Methode und wählen Sie **Debug <Applikationsname>** Rechtsklicken Sie dazu auf den Play-Button neben der ''main''-Methode und wählen Sie **Debug <Applikationsname>**
 </WRAP> </WRAP>
Zeile 92: Zeile 92:
 Nachdem die Debugger-Sitzung gestartet wurde, läuft das Programm normal, bis ein Haltepunkt erreicht wird. In diesem Fall wird die Zeile, in der das Programm angehalten wurde, hervorgehoben und das Fenster des Debuggers erscheint. Nachdem die Debugger-Sitzung gestartet wurde, läuft das Programm normal, bis ein Haltepunkt erreicht wird. In diesem Fall wird die Zeile, in der das Programm angehalten wurde, hervorgehoben und das Fenster des Debuggers erscheint.
  
-{{:modul:m319:learningunits:lu09:debuggerstartet.png?800|}}+{{de:modul:m319:learningunits:lu09:debuggerstartet.png?800|}}
  
 Die markierte Zeile ist noch nicht ausgeführt worden. Das Programm wartet jetzt auf weitere Anweisungen von Ihnen. Im Schwebezustand können Sie Variablen untersuchen, die den Zustand des Programms enthalten. Die markierte Zeile ist noch nicht ausgeführt worden. Das Programm wartet jetzt auf weitere Anweisungen von Ihnen. Im Schwebezustand können Sie Variablen untersuchen, die den Zustand des Programms enthalten.
Zeile 98: Zeile 98:
 Da die findAverage-Methode noch nicht aufgerufen wurde, sind alle ihre lokalen Variablen wie result noch nicht im Gültigkeitsbereich, aber wir können den Inhalt der ArrayList untersuchen. Der Inhalt von der ArrayList wird beim draufklicken angezeigt: Da die findAverage-Methode noch nicht aufgerufen wurde, sind alle ihre lokalen Variablen wie result noch nicht im Gültigkeitsbereich, aber wir können den Inhalt der ArrayList untersuchen. Der Inhalt von der ArrayList wird beim draufklicken angezeigt:
  
-{{:modul:m319:learningunits:lu09:contentarraylist.png?600|}}+{{de:modul:m319:learningunits:lu09:contentarraylist.png?600|}}
  
 Sie können auch Informationen über alle Variablen abrufen, die sich derzeit im Gültigkeitsbereich befinden, und zwar im Bereich Variablen. Sie können auch Informationen über alle Variablen abrufen, die sich derzeit im Gültigkeitsbereich befinden, und zwar im Bereich Variablen.
  
-{{:modul:m319:learningunits:lu09:variablenexplorer.png?600|}}+{{de:modul:m319:learningunits:lu09:variablenexplorer.png?600|}}
  
 ===== Schritt für Schritt durch das Programm ===== ===== Schritt für Schritt durch das Programm =====
Zeile 112: Zeile 112:
 Um in eine Methode einzusteigen, klicken Sie auf die Schaltfläche ''Step Into'' oder drücken Sie **F7**. Um in eine Methode einzusteigen, klicken Sie auf die Schaltfläche ''Step Into'' oder drücken Sie **F7**.
  
-{{:modul:m319:learningunits:lu09:stepinto.png?600|}}+{{de:modul:m319:learningunits:lu09:stepinto.png?600|}}
  
 Schaltfläche "Step into" im oberen Teil des Debug-Tool-Fensters Schaltfläche "Step into" im oberen Teil des Debug-Tool-Fensters
Zeile 123: Zeile 123:
 Gehen wir weiter und sehen wir uns an, wie die lokale Variable ''result'' deklariert ist und wie sie bei jeder Iteration der Schleife geändert wird. Gehen wir weiter und sehen wir uns an, wie die lokale Variable ''result'' deklariert ist und wie sie bei jeder Iteration der Schleife geändert wird.
  
-{{:modul:m319:learningunits:lu09:findaverage.png?600|}}+{{de:modul:m319:learningunits:lu09:findaverage.png?600|}}
  
 Das Inline-Debugging hilft uns, Informationen über die Variablenwerte zu erhalten Das Inline-Debugging hilft uns, Informationen über die Variablenwerte zu erhalten
Zeile 132: Zeile 132:
 Zwei weitere Schritte führen uns zur Return-Anweisung und wir sehen, wo die Fehlerquelle liegt. Wir haben vergessen, die Summe durch die Anzahl der Werte zu dividieren. Dies war die Ursache für die fehlerhafte Rückgabe der Methode. Zwei weitere Schritte führen uns zur Return-Anweisung und wir sehen, wo die Fehlerquelle liegt. Wir haben vergessen, die Summe durch die Anzahl der Werte zu dividieren. Dies war die Ursache für die fehlerhafte Rückgabe der Methode.
  
-{{:modul:m319:learningunits:lu09:result.png?600|}}+{{de:modul:m319:learningunits:lu09:result.png?600|}}
  
 Der Wert des Ergebnisses wird so zurückgegeben, wie er ist, ohne ihn durch die Anzahl der Argumente zu dividieren.  Der Wert des Ergebnisses wird so zurückgegeben, wie er ist, ohne ihn durch die Anzahl der Argumente zu dividieren. 
Zeile 146: Zeile 146:
 ===== Beenden Sie die Debugger-Sitzung und führen Sie das Programm erneut aus ===== ===== Beenden Sie die Debugger-Sitzung und führen Sie das Programm erneut aus =====
 Um zu prüfen, ob das Programm einwandfrei funktioniert, beenden wir die Debugger-Sitzung und führen das Programm erneut aus. Um zu prüfen, ob das Programm einwandfrei funktioniert, beenden wir die Debugger-Sitzung und führen das Programm erneut aus.
-{{ :modul:m319:learningunits:lu09:correct.png?600 |}}+{{ de:modul:m319:learningunits:lu09:correct.png?600 |}}
  
 ---- ----
 [[https://creativecommons.org/licenses/by-nc-sa/4.0/|{{https://i.creativecommons.org/l/by-nc-sa/4.0/88x31.png}}]] (c) Kevin Maurizi [[https://creativecommons.org/licenses/by-nc-sa/4.0/|{{https://i.creativecommons.org/l/by-nc-sa/4.0/88x31.png}}]] (c) Kevin Maurizi
  • modul/archiv/m319/learningunits/lu09/lu09a-debuggeranwenden.1711631267.txt.gz
  • Zuletzt geändert: 2024/03/28 14:07
  • von 127.0.0.1