image

Acesse bootcamps ilimitados e +650 cursos pra sempre

60
%OFF

LW

Lucas Weber06/05/2024 22:55
Compartilhe

Tratamento de Exceções

    Olá pessoal, me chamo Lucas Weber, estou cursando o BootCamp Java proposto pelo Santander. Gostaria de trazer um tema proposto em um dos desafios da Trilha Java Básico do BootCamp, a criação de exceções customizadas.

    Ao criar uma exceção customizada, temos a possibilidade de extender a classe Expection. Nesse ponto do curso ainda não foi visto orientação a objetos, mas o ponto é que, temos uma estrutura ao qual denominamos classe pai, que possui um comportamento, ao qual, permite que a classe que esteja extendo, implemente também.

    O ponto que quero destacar é que um desses comportamentos do qual podemos implementar é criar nossas mensagens de erros customizadas, para adequar ainda mais nossa aplicação e torná-la ainda mais amigável para o usuário, caso um erro seja causado em tempo de execução.

    No exemplo do desafio, seria criar uma exceção chamada ArgumentoInvalidoException. Para implementarmos essa característica de mensagens customizadas precisamos extender a classe Exception, portanto a estrutra de declaração fica:

    public ArgumentoInvalidoException extends Exception{ }

    O próximo passo, para implementar essa característica seria estrutar nossa classe, de modo que nosso método construtor, ou seja, aquele método que é responsável por criar a Exceção quando fazemos sua chamada, receba em um de seus argumentos um mensagem. Estruturado dessa maneira:

    public ArgumentoInvalidoException(String mensagem){

    super(mensagem);

    }

    Note que, o método construtor sempre possui a mesma assinatura do nome da classe. Também, está sendo passado como parâmetro para o método, uma variável do tipo String, que será responsável pelo conteúdo da mensagem que causará a exceção. Já dentro do método a chamada do método super() passando como parâmetro a própria mensagem, faz referencia ao método construtor da classe pai, ou seja, a classe Exception ao qual estamos extendendo, isso indica que, é a classe pai que realiza a implementação dessa característica de exibição de mensagem quando a exceção estoura e, nossa classe, enquanto filha, está realizando a implementação desse recurso previamente estruturado.

    Com isso, temos a capacidade, em outros métodos indicar o uso dessa exceção, e dado o contexto do tipo de erro, customizar essa mensagem, por exemplo:

    public Main {

    public static void contar(int n1, int n2) throws ArgumentoInvalidoException{

    if (n1 > n2) throw new ArgumentoInvalidoException("O segundo número deve ser maior que o primeiro");

    // Restante do código aqui..

    }

    }

    Note que, ao ser invocado, e a condição if ser verdadeira, uma exceção será lançada, e a execução do código será interrompida.

    Espero que tenha ajudado 😁😎

    Compartilhe
    Comentários (0)