Debugowanie aplikacji, breakpoint

0

Jeden z użytkowników zalecił mi natychmiastowe zapoznanie się z debuggerem, a więc przeczytałam poradniki w sieci, obejrzałam coś na yt i już na wstępie mam kilka problemów/pytań.

Poradniki o breakpoincie:

breakpoint to nic innego jak miejsce, w którym działanie naszego programu zostanie ‚wstrzymane’ w celu dalszej analizy.

Każdy poradnik mówi to samo.

Chciałabym wiedzieć, czy program debuguje wszystko do momentu zaznaczenia breakpointu czy po zaznaczeniu breakpointu.
Zanim zaczęłam prosić o pomoc na forum postanowiłam sprawdzić to sama i tu pojawiły się kolejne problemy.

Napisałam program z celowym błędem:

package pl.test;

import java.util.Scanner;

public class deb {

	public static void main(String[] args) {
		
		int liczba1;
		int liczba2;
		
		Scanner in = new Scanner(System.in);
		System.out.println(" wpisz liczbe ");
		liczba1 = in.nextInt();
		System.out.println(" wpisz 2 liczbe ");
		liczba2 = in.nextLine();
		
		System.out.println("wpisales liczby: " + liczba1 + liczba2);
		
		

	}
}

Odpaliłam debugowanie, co prawda kompilator od razu zaznaczył gdzie i jaki jest błąd(podejrzewam że w bardziej zaawansowanych programach już tak łatwo nie ma i bez debuggera się nie obejdzie)
ale chciałam sprawdzić o co chodzi z tymi breakpointami sama(nie udało się sprawdzić), a debugger podobno ma mi powiedzieć co aktualnie znajduję się w zmiennych(nie powiedział mi).
Domyśliłam się, że przecież do mojej zmiennej trzeba przekazać dane przez konsole i dlatego w debuggerze nie pokazuje co siedzi w zmiennych a tu jest problem, bo nie mogę tego zrobić gdy program się nie kompiluje.

2

Program nic sam nie debuguje. Debuger to jest narzędzie do analizy wykonania kodu krok po kroku. Stawiasz breakpoint, uruchamiasz program w debug mode a program zacznie sie normalnie wykonywać i zatrzyma się kiedy dojdzie do breakpointa i wtedy debugger powienien aktywować kontrolki sterowania, tzn takie guziczki jak "step into", "step over", "continue" oraz możliwosć podglądnięcia sobie ramek stosu oraz wszystkich widocznych zmiennych.
Poza tym jak już powiedziałem debuger służy do analizy WYKONANIA programu a nie analizy kompilacji. "Błąd" że program sie nie kompiluje to żaden błąd i nawet małpa będzie umiała taki "błąd" poprawić. Prawdziwe problemy to się pojawiają właśnie w czasie wykonania kiedy program zwraca niepoprawne wyniki i nie wiadomo czemu.

2

Zrób program bez błędu, postaw breakpointa na linii z wypisywaniem i sama zobacz :)

2

Fajnie to widać w pętli. Napisz sobie prostą pętlę for, która np. Wyświetla coś.

1 użytkowników online, w tym zalogowanych: 0, gości: 1