Corrigindo um erro
Errors são problemas sérios no mundo Java. Às vezes eles surgem por questões de ambiente, fora do nosso controle. Em outras, podemos escrever código ruim que causa um Error. Neste exercício, você vai observar e depois corrigir uma aplicação que nunca termina e gera um Error (especificamente, um StackOverflowError). Ver um Error vai ajudar você a identificá-los no futuro. Diferente de exceptions, errors não podem ser tratados com try-catch ou throws.
Este exercicio faz parte do curso
Tipos de Dados e Exceções em Java
Instruções do exercicio
- Execute o código de exemplo como está, em que o valor de
cyclesnunca muda, o que leva a um loop infinito de chamadas, faz a aplicação falhar e gera umStackOverflowError. - Depois de ver o
StackOverflowError, adicione+ 1acyclesna chamada dedoWork, fazendo o valor de cycles mudar e interromper o loop infinito de chamadas. - Execute o código novamente para ver a aplicação rodar com sucesso e evitar o
StackOverflowError.
exercicio interativo prático
Tente este exercicio completando este código de exemplo.
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);
}
}
}