Eu não entendi tão bem o THIS, poderia explicar melhor ?
Eu não entendi tão bem o THIS, poderia explicar melhor ?
Olá, Abel!
A palavra reservada this
faz referência ao próprio objeto que está chamando o método. Essa palavra é muito usada dentro dos métodos definidos nas classes, pois cada instância de objeto é independente, e portanto, o this
nos permite fazer essa referência individual, a cada chamada do método.
Vou te dar um exemplo. Vamos supor que que temos uma classe chamada pessoa, e que estamos criando um método para mudar o nome de um objeto desta classe:
public class Pessoa {
public String nome;
public void mudaNome(String novoNome) {
this.nome = novoNome;
}
}
A instrução this.nome
acessa o atributo nome
do objeto que está chamando essa função, e logo em seguida, atribuímos um novo valor a esse atributo com a instrução = novoNome
. Com isso, conseguimos definir apenas um método genérico e fazer uso dele em qualquer objeto da classe pessoa.
Se eu tiver 2 objetos e utilizar esse método, os nomes serão trocados individualmente, pois o this
faz referência a cada objeto no momento da chamada do método.
Pessoa p1 = new Pessoa();
Pessoa p2 = new Pessoa();
p1.mudaNome("João"); //O atributo nome de p1 passará a ser "João"
p2.mudaNome("Ana"); //O atributo nome de p2 passará a ser "Ana"
Espero ter ajudado!
Continue firme em seus estudos!