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

Por que não preciso do getNome() de outroAluno

Como consigo acessar a propriedade privada nome de outro aluno, fora de seu contexto this? Eu não deveria precisar do getNome()?

@Override
public boolean equals(Object obj) {
    Aluno outroAluno = (Aluno) obj;
    return this.nome.equals(outroAluno.nome);
}
3 respostas
solução!

Carlos, você consegue acessar, pois está na mesma classe que a varável foi declarada. Se você estivesse em uma outra classe iria precisar utilizar o getNome() para pegar o valor da variável e se tivesse que alterá-la utilizar o setNome()para mudar o valor.

Outra coisa neste caso se você não usar o this também funciona, pois este diz está dizendo que é a variável nome da classe e não a que está no método, mas como não existe uma variável nome neste método não precisaria do this, mas é boa prática utilizar. Por exemplo:

public void setNome(String nome){
 this.nome=nome; // significa que a variavel nome(this.nome) da classe recebe o valor da variavel nome do método
}

Eu pensei que os métodos e propriedades fossem acessíveis somente dentro do contexto de this, e não com qualquer objeto da classe. Bom, muito obrigado.

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software