2
respostas

Prosseguimento da Execução??

O professor disse que após encontrar a exceção, há prosseguimento na execução tentando achar algum código dentro de cada método subsequente que consiga resolver a exceção. No meu entendimento, acredito que uma vez encontrado o problema ( exceção) o programa é parado e o Eclipse apresenta a exceção com a respectiva linha do código e as linhas onde parou em cada um dos métodos, já que não acabou de rodar. E assim, já que o código foi parado, estaria incorreto dizer que o código continuou procurando "um método que conseguisse resolver a exceção".Estou errada neste raciocínio? Isso aparece também na alternativa C da questão 2 sobre exceções.

2 respostas

Olá Silvia, tudo bem com você?

Realmente, a impressão que fica é que quando o programa encontra uma exceção, tudo para e a exceção já é apresentada no console. Mas na verdade, isso só acontece porque nenhum dos métodos que invocou o método que lança a exceção conseguiu tratá-la antes que ela "explodisse" no usuário.

Portanto, está correto dizer que o programa continuou procurando um método que conseguisse resolver a exceção.

Para ser mais exato, o programa:

  1. Encontrou uma exceção;
  2. Interrompeu a execução do método que jogou a exceção;
  3. Procurou por alguém que tratasse essa exceção nos métodos subsequentes;
  4. Não encontrou ninguém;
  5. Por fim, apresentou a mensagem da exceção ao usuário.

É basicamente esse o processo que ocorreu e deu a impressão que o programa simplesmente parou.

Faz sentido? Se algum ponto não ficou claro é só avisar! Abraços e bons estudos!!

Com o tratamento da exceção (try & catch) fica claro que o programa continua mas sem o tratamento não há provas de que ele continuou...