DEV Community

Exceções permitem que você trate erros normalmente

Tratamento de exceções permite a continuidade do programa:

  • Exceções são usadas para tratar erros inesperados sem que o programa seja encerrado abruptamente.
  • Quando uma exceção ocorre, o programa pode capturá-la, tratá-la e continuar executando normalmente.

Exemplo de exceção sendo capturada:

  • No exemplo, tentamos dividir os elementos de dois arrays.
  • Se ocorrer uma divisão por zero, a exceção ArithmeticException será gerada e tratada, permitindo que o programa continue.

Exemplo de código:

class ExcDemo3 {
    public static void main(String args[]) {
        int numer[] = { 4, 8, 16, 32, 64, 128 };
        int denom[] = { 2, 0, 4, 4, 0, 8 };

        for (int i = 0; i < numer.length; i++) {
            try {
                // Tenta realizar a divisão
                System.out.println(numer[i] + " / " + denom[i] + " is " + numer[i] / denom[i]);
            } catch (ArithmeticException exc) {
                // Captura e trata a exceção de divisão por zero
                System.out.println("Can't divide by Zero!");
            }
        }
    }
}

Enter fullscreen mode Exit fullscreen mode

Saída do programa:

  • O programa exibe o resultado das divisões bem-sucedidas e trata as divisões por zero, informando o erro sem encerrar a execução.
4 / 2 is 2
Can't divide by Zero!
16 / 4 is 4
32 / 4 is 8
Can't divide by Zero!
128 / 8 is 16

Enter fullscreen mode Exit fullscreen mode

Exceções são removidas após serem tratadas:

  • Cada vez que o loop é executado, o bloco try é reavaliado.
  • Exceções tratadas anteriormente não afetam futuras execuções.

Benefício:
O tratamento de exceções permite que o programa lide com erros repetidos e continue seu fluxo de execução de forma suave.

Conclusão:
Tratamento de exceções permite que o programa continue funcionando ao lidar com erros como divisões por zero, em vez de encerrar a execução.

Top comments (0)