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

Dúvida sobre com classes

Olá!

No código abaixo, como o Java reconhece que estamos chamando o construtor da mensagem ??

E se o Exception tivesse um outro construtor com uma estrutura parecida, como "super(outramensagem)"?

public class SaldoInsufucienteException extends Exception{

    public SaldoInsufucienteException(String msg) {
        super(msg);
    }

}
4 respostas

Oi Caroline

A palavra reservada "super" é usada para chamar a classe pai, que nesse caso é Exception. Como você está passando um único argumento string, o compilador vai procurar um construtor na classe Exception que recebe apenas uma String. O nome do argumento não importa, pode ser "msg" ou "outramensagem", iria chamar o mesmo construtor de Exception, o que importa é o tipo da variável (string).

Obrigada!! Ajudou bastante!

E se a classe pai tivesse outro construtor que recebesse também apenas uma String?

solução!

Oi Caroline

O compilador não deixa declarar uma classe com dois construtores com a mesma assinatura (dois construtores que recebem uma String, por exemplo). Tem que haver apenas 1 justamente para saber qual deles chamar

Obrigada!