Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lære Fejlsøger | Hvordan Man Arbejder Med IDE?
Java OOP
course content

Kursusindhold

Java OOP

Java OOP

1. Hvordan Man Arbejder Med IDE?
2. OOP
3. Interface

book
Fejlsøger

Hvad er en debugger?

En debugger er et værktøj, der hjælper dig med at gennemgå din kode trin for trin. Vi kan sætte eksekveringen af koden på pause på et bestemt punkt og starte debug-tilstand for at se, hvordan vores kode fungerer. For at gøre dette skal vi sætte en markør (breakpoint) på den linje, hvor vi ønsker at pause.

Vi har en kode, der skal beregne summen af tal fra et til ti inklusive. Resultatet skal være 55, men vi får 45 som svar. Lad os sætte et breakpoint i starten af løkken for at forstå, hvorfor svaret ikke stemmer. For at gøre dette skal du klikke med venstre museknap på linjenummeret, og en rød markør vil dukke op der.

Her er koden fra skærmbilledet, omskrevet for bedre læsbarhed og klarhed:

Main.java

Main.java

copy
12345678910111213
package com.example; import java.util.Arrays; public class Main { public static void main(String[] args) { int result = 0; for(int i = 0; i < 10; i++) { result += 1; System.out.println(result); } } }

Værktøjer i debug-tilstand

Lad os kort gennemgå, hvordan man arbejder med debuggeren, og hvilke værktøjer der er tilgængelige i den.

  • Step Over: Med denne knap kan vi fortsætte kodeudførelsen én linje ad gangen. Når den trykkes, vil debuggeren udføre den aktuelle linje og gå videre til den næste, hvorefter den stopper igen;

  • Step Into: Med denne knap kan vi gå ind i udførelsen af en metode. I vores eksempel er der ingen metode, men hvis der var, ville vi kunne gå ind i den og se, hvad der sker der;

  • Step Out: Denne knap er det modsatte af den forrige. Den giver os mulighed for at forlade udførelsen af en metode eller en løkke;

  • Vi kan se værdierne af variablerne i vinduet nederst eller ved siden af disse variabler. Vi kan tydeligt se værdien af variablen result, som oprindeligt er nul.

Gennemløb af koden

For at gennemløbe koden klikker vi på "Step Over"-knappen. Vi går ind i for-løkke, og værdien af variablen i vises, som er oprettet inde i for-løkke. Oprindeligt sætter vi denne variabel til nul.

Dernæst klikker vi på "Step Over" flere gange for at fuldføre én iteration og går til konsollen for at se, om noget bliver udskrevet på skærmen. Vi kan se, at variablen i blev øget med 1, og "0" blev vist på skærmen, da både variablen result og variablen i oprindeligt var sat til nul. 0 + 0 = 0 -> dette var det, der blev vist på skærmen.

Lad os springe iterationerne over, hvor de andre tal udskrives til konsollen, og gå til slutningen. Det er her, vi kan se hovedfejlen i vores løkke. Vi skal vise summen af tallene fra 0 til 10 inklusive, men vi inkluderede ikke 10. Derfor, når vi ser, at i = 9 og når den øges til 10, forlader vi løkken, da 10 !< 10 (10 er ikke mindre end 10).

For at løse dette problem skal vi ændre betingelsen til i <= 10. Så får vi det korrekte resultat.

I bund og grund trykkede vi gentagne gange på "Step Over"-knappen, hvilket førte os til erkendelsen af fejlen i løkken og den efterfølgende rettelse.

Bemærk

Jeg har kun vist de grundlæggende debugger-værktøjer. For at lære at bruge dem, bør du selv øve dig med dem. Du kan skrive et lignende program og selvstændigt se, hvordan det hele fungerer. Debuggeren er et meget nyttigt værktøj, fordi det hjælper med at arbejde med fejl og bugs i koden.

1. Hvad er det primære formål med en debugger?

2. Hvad giver et breakpoint dig mulighed for at gøre i en debugger?

3. Hvad gør "Step Over"-knappen i debuggeren?

question mark

Hvad er det primære formål med en debugger?

Select the correct answer

question mark

Hvad giver et breakpoint dig mulighed for at gøre i en debugger?

Select the correct answer

question mark

Hvad gør "Step Over"-knappen i debuggeren?

Select the correct answer

Var alt klart?

Hvordan kan vi forbedre det?

Tak for dine kommentarer!

Sektion 1. Kapitel 5

Spørg AI

expand

Spørg AI

ChatGPT

Spørg om hvad som helst eller prøv et af de foreslåede spørgsmål for at starte vores chat

course content

Kursusindhold

Java OOP

Java OOP

1. Hvordan Man Arbejder Med IDE?
2. OOP
3. Interface

book
Fejlsøger

Hvad er en debugger?

En debugger er et værktøj, der hjælper dig med at gennemgå din kode trin for trin. Vi kan sætte eksekveringen af koden på pause på et bestemt punkt og starte debug-tilstand for at se, hvordan vores kode fungerer. For at gøre dette skal vi sætte en markør (breakpoint) på den linje, hvor vi ønsker at pause.

Vi har en kode, der skal beregne summen af tal fra et til ti inklusive. Resultatet skal være 55, men vi får 45 som svar. Lad os sætte et breakpoint i starten af løkken for at forstå, hvorfor svaret ikke stemmer. For at gøre dette skal du klikke med venstre museknap på linjenummeret, og en rød markør vil dukke op der.

Her er koden fra skærmbilledet, omskrevet for bedre læsbarhed og klarhed:

Main.java

Main.java

copy
12345678910111213
package com.example; import java.util.Arrays; public class Main { public static void main(String[] args) { int result = 0; for(int i = 0; i < 10; i++) { result += 1; System.out.println(result); } } }

Værktøjer i debug-tilstand

Lad os kort gennemgå, hvordan man arbejder med debuggeren, og hvilke værktøjer der er tilgængelige i den.

  • Step Over: Med denne knap kan vi fortsætte kodeudførelsen én linje ad gangen. Når den trykkes, vil debuggeren udføre den aktuelle linje og gå videre til den næste, hvorefter den stopper igen;

  • Step Into: Med denne knap kan vi gå ind i udførelsen af en metode. I vores eksempel er der ingen metode, men hvis der var, ville vi kunne gå ind i den og se, hvad der sker der;

  • Step Out: Denne knap er det modsatte af den forrige. Den giver os mulighed for at forlade udførelsen af en metode eller en løkke;

  • Vi kan se værdierne af variablerne i vinduet nederst eller ved siden af disse variabler. Vi kan tydeligt se værdien af variablen result, som oprindeligt er nul.

Gennemløb af koden

For at gennemløbe koden klikker vi på "Step Over"-knappen. Vi går ind i for-løkke, og værdien af variablen i vises, som er oprettet inde i for-løkke. Oprindeligt sætter vi denne variabel til nul.

Dernæst klikker vi på "Step Over" flere gange for at fuldføre én iteration og går til konsollen for at se, om noget bliver udskrevet på skærmen. Vi kan se, at variablen i blev øget med 1, og "0" blev vist på skærmen, da både variablen result og variablen i oprindeligt var sat til nul. 0 + 0 = 0 -> dette var det, der blev vist på skærmen.

Lad os springe iterationerne over, hvor de andre tal udskrives til konsollen, og gå til slutningen. Det er her, vi kan se hovedfejlen i vores løkke. Vi skal vise summen af tallene fra 0 til 10 inklusive, men vi inkluderede ikke 10. Derfor, når vi ser, at i = 9 og når den øges til 10, forlader vi løkken, da 10 !< 10 (10 er ikke mindre end 10).

For at løse dette problem skal vi ændre betingelsen til i <= 10. Så får vi det korrekte resultat.

I bund og grund trykkede vi gentagne gange på "Step Over"-knappen, hvilket førte os til erkendelsen af fejlen i løkken og den efterfølgende rettelse.

Bemærk

Jeg har kun vist de grundlæggende debugger-værktøjer. For at lære at bruge dem, bør du selv øve dig med dem. Du kan skrive et lignende program og selvstændigt se, hvordan det hele fungerer. Debuggeren er et meget nyttigt værktøj, fordi det hjælper med at arbejde med fejl og bugs i koden.

1. Hvad er det primære formål med en debugger?

2. Hvad giver et breakpoint dig mulighed for at gøre i en debugger?

3. Hvad gør "Step Over"-knappen i debuggeren?

question mark

Hvad er det primære formål med en debugger?

Select the correct answer

question mark

Hvad giver et breakpoint dig mulighed for at gøre i en debugger?

Select the correct answer

question mark

Hvad gør "Step Over"-knappen i debuggeren?

Select the correct answer

Var alt klart?

Hvordan kan vi forbedre det?

Tak for dine kommentarer!

Sektion 1. Kapitel 5
some-alt