image

Bootcamps ilimitados + curso de inglês para sempre

80
%OFF
Lucas Weber
Lucas Weber06/05/2024 22:55
Compartilhe

Tratamento de Exceções

  • #Java

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
Recomendados para você
Deal - Spring Boot e Angular (17+)
Cognizant - Arquitetura com Spring Boot e Cloud
Claro - Java com Spring Boot
Comentários (0)