Fala galera, beleza ? Preciso de uma ajudinha aqui, por favor! :B Cheguei a uma conclusão, me corrijam se eu estiver errado! Falando de heranças:
Ao usar o extend, a subclasse herda todos os atributos e métodos da classe mãe (exceto os construtores diferentes do padrão - este que o próprio Java interpreta como implícito). Ao fazer uma reutilização de código (nesse caso, herdando um construtor parametrizado da classe mãe), você precisa fazer na classe filha uma referencia chamada de super(algumaCoisa).
A minha dúvida é : Os valores mencionados -dentro do super- se referem exatamente aos mesmos parâmetros do Construtor original da classe mãe (Classe Conta)¹ ? Ou se referem aos parâmetros já declarados no construtor da classe filha (Classe ContaCorrente)² ?
//construtor Classe Conta (mãe)
public Conta(int agencia, int numero) {... //¹ aqui ?
//construtor Classe ContaCorrente (filha)
public ContaCorrente(int agencia, int numero) { //² ou aqui ?
super(agencia, numero);
}
Outra dúvida (Abaixo segue o código para melhor explicação) : Se houver 30 atributos dentro do construtor da classe mãe e eu querer herdar todos na classe filha, preciso colocar todos na parametrização do super () ? Há alguma possibilidade de querer herdar só alguns comandos específicos do construtor original, excluindo os outros ?
//construtor da Classe Mãe
public Conta(int agencia, int numero) {
Conta.total++;
System.out.println("O total de contas é " + total);
this.agencia = agencia;
this.numero = numero;
System.out.println("Estou criando uma conta " + this.numero + this.agencia);
}
____________________________________________________________________________
//construtor da classe filha
public class ContaCorrente extends Conta {
public ContaCorrente(int agencia, int numero) {
super(agencia, numero);
}
Obrigado desde já! :D :D