Oi, pessoal. Estou com dificuldades de implementar a Exception "ErroDeConversaoDeAnoException". Podem me ajudar, por favor?
Recebo que o método mensagem() não foi definido.
PrincipalComBusca
Título
ErroDeConversaoDeAnoException
Você está vendo a versão anterior da nova experiência da Alura que estamos preparando para você. Em breve, ela ganha uma identidade visual novinha totalmente pensada em potencializar seus estudos!
Oi, pessoal. Estou com dificuldades de implementar a Exception "ErroDeConversaoDeAnoException". Podem me ajudar, por favor?
Recebo que o método mensagem() não foi definido.
PrincipalComBusca
Título
ErroDeConversaoDeAnoException
Olá, Ingrid! Como vai?
Parece que você está enfrentando um problema com a implementação da sua exceção personalizada. O erro que você está recebendo indica que o método mensagem() não foi definido. Vamos corrigir isso.
Verifique a Classe de Exceção:
Certifique-se de que sua classe ErroDeConversaoDeAnoException está assim:
package br.com.alura.screenmatch.excecao;
public class ErroDeConversaoDeAnoException extends RuntimeException {
private String mensagem;
public ErroDeConversaoDeAnoException(String mensagem) {
this.mensagem = mensagem;
}
@Override
public String getMessage() {
return this.mensagem;
}
}
Uso do Construtor:
Quando você lança a exceção, não precisa especificar mensagem:. Apenas passe a string diretamente:
throw new ErroDeConversaoDeAnoException("Não consegui converter o ano porque tem mais de 04 caracteres.");
Tratamento da Exceção:
No seu catch, você já está usando e.getMessage(), que é o método correto para obter a mensagem da exceção.
Revise esses pontos e veja se o problema persiste. Espero ter ajudado e bons estudos!