Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

Onde colocar o Try-Catch

Aproveitando a pergunta abaixo, feito pelo Marcos Allan de Freitas Nunes - em: 11/12/2022, não ficou claro para mim onde devemos lançar o método Try-Catch para correção das exceções. No exemplo dado pelo professor, nesta aula, ele lança no método Main, porém no meu exercício eu lançei na class do método (Nesse caso a classe "conta").

De fato, o que diz as boas práticas sobre onde lançar o try-catch ? Me parece tão estranho lançar no Main.. rs

public void saca(double valor) {

    try {
        if (this.saldo < valor) {
            throw new SaldoInsuficienteException(
                    "Saldo: " + this.saldo + ", Valor: " + valor + ". Não pode ficar com o saldo negativo");
        } else {

            this.saldo -= valor;
        }

    } catch (SaldoInsuficienteException e) {
        System.out.println(e.getMessage());
    }
}
2 respostas
solução!

Olá, Leonardo! Tudo bem?

O Try-Catch é utilizado para tratar exceções em um trecho de código que pode gerar erros. Em relação à sua dúvida, não há uma regra específica sobre onde colocar o Try-Catch, mas é importante lembrar que ele deve ser colocado onde a exceção é lançada, ou seja, onde o erro pode ocorrer.

No exemplo dado pelo professor, ele colocou o Try-Catch no método Main porque era onde ele estava chamando o método que poderia gerar a exceção. No seu caso, você colocou o Try-Catch no método "saca", que também é uma boa prática, já que é onde a exceção pode ser lançada.

O importante é entender que o Try-Catch deve estar presente onde a exceção pode ocorrer, para que o erro seja tratado e não afete a execução do programa.

Espero ter ajudado e bons estudos!

Obrigado, Otávio.