O professor mostrou que se usa o getmessage(); para exibir as mensagens dentro das exceções. Não deveria ter um comando SET para inserir as mensagens das exceções? Como o construtor sabe que é bem naquele local que a mensagem deve ficar?
O professor mostrou que se usa o getmessage(); para exibir as mensagens dentro das exceções. Não deveria ter um comando SET para inserir as mensagens das exceções? Como o construtor sabe que é bem naquele local que a mensagem deve ficar?
Desculpe, mas não entendi.
o getMessage() pega a mensagem de erro capturado de uma exceção:
class Main {
public static void main(String[] args) {
try {
throw new ArithmeticException("deu errado");
} catch(ArithmeticException e) {
System.out.println(e.getMessage());
}
}
vai printar "deu errado"
A mensagem deve corresponder ao contexto, veja um exemplo em https://repl.it/@chicofig/DuvidaRudy
class Main {
public static void main(String[] args) {
try {
System.out.print("Digite um número: ");
String valorString = System.console().readLine();
Integer valor = Integer.parseInt(valorString);
System.out.println("Valor é: " + ( 20 / valor ) );
throw new ArithmeticException("Esse erro será informado se tudo deu certo");
} catch(Exception e) {
System.out.println("erro: " + e.getMessage());
}
}
}
Digite um número: 10
Valor é: 2
erro: Esse erro será informado se tudo deu certo
Bom dia Rudy, quando instanciamos um objeto passando alguma informção, nesse objeto, o construtor dele saberá receber essa informação e armazerar nos atributos corretos, por isso chamamos getMessage(), pois sabemos que a String passada vai para uma variável chamada message.