Pode esclarecer a diferença entre o this() e o super() ? Com exemplos aplicados.
Pode esclarecer a diferença entre o this() e o super() ? Com exemplos aplicados.
Ola, Isabela.
O this serve para referenciar os variaveis do próprio objeto, e o super é pra referenciar variaveis que estão em classes mãe daquela classe.
O exemplo seria, se eu tivesse uma classe chamada Pessoa e uma filha dela que chamaria PessoaFisica, nesse caso, dentro da classe PessoaFisica, para chamar o cpf por exemplo usuaria o this.cpf e para chamar o nome usuaria o super.nome
Consegui explicar?
Oie Isabela, tudo bem contigo?
O "this()" é usado quando existe mais de um construtor na mesma classe, e ele serve para chamar outro construtor, segue o exemplo:
public class Estudante {
private String name;
public Estudante(String nome) {
System.out.println("Nome do estudante : " + nome);
}
public Estudante() {
this("Eduardo") // esse this chama o primeiro construtor, isso acontece já que ele identifica através do parâmetro String qual é o construtor que só recebe esse dado como argumento, que no caso, seria o primeiro construtor
}
Já o super()
é usado para chamar o construtor da super classe, segue exemplo:
Classe Funcionário (super classe):
public class Funcionario {
private String nome;
public Funcionario(String nome) {
this.nome = nome;
}
}
Classe Gerente (subclasse):
public class Gerente {
public Gerente(String nome){
super(nome); // chamou o construtor da super classe
}
}
Alguns links que eu recomendo para se aprofundar mais nesse são esses:
Espero ter conseguido ajudar!
Se ainda restar dúvida é só mandar mensagem por aqui :)