Corectarea unei erori
Erorile sunt probleme grave în lumea Java. Uneori apar din cauza unor probleme de mediu care nu depind de noi. Alteori, putem scrie cod defectuos care provoacă o Error. În acest exercițiu, vei observa și apoi vei corecta o aplicație care nu se va termina niciodată și va genera o Error (mai exact, o StackOverflowError). Să înveți să recunoști o Error te va ajuta să o identifici mai ușor în viitor. Spre deosebire de excepții, erorile nu pot fi gestionate cu try-catch sau throws.
Acest exercițiu face parte din cursul
Tipuri de date și excepții în Java
Instrucțiuni pentru exercițiu
- Rulează codul exemplu ca atare, în care valoarea
cyclesnu se modifică niciodată, ceea ce duce la o buclă infinită de apeluri și face ca aplicația să eșueze, generând oStackOverflowError. - După ce observi
StackOverflowError, adaugă+ 1lacyclesîn apelul cătredoWork, astfel încât valoarea luicyclessă se modifice și bucla infinită de apeluri să se oprească. - Rulează din nou codul pentru a vedea că aplicația se execută cu succes și evită
StackOverflowError.
Exercițiu interactiv practic
Încearcă acest exercițiu completând acest cod de exemplu.
public class ErrorGeneration {
public static void main(String[] args) {
System.out.println("Started the work");
doWork(0);
System.out.println("Work complete");
}
public static void doWork(int cycles) {
if (cycles < 10) {
// Add +1 to cycles after running
doWork(cycles);
}
}
}