1
resposta

THIS

Eu não entendi tão bem o THIS, poderia explicar melhor ?

1 resposta

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!

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