esta palavra-chave em Java
⚡ Resumo Inteligente
Java A palavra-chave `this` é uma variável de referência que aponta para o objeto atual dentro de um método ou construtor. LessOs tópicos abordam finalidade, usos comuns, conflitos de nomenclatura, encadeamento de construtores e um exemplo prático.

Em que consiste esta palavra-chave Java?
O esta palavra-chave em Java é uma variável de referência que se refere ao objeto atual de um método ou construtor. O objetivo principal de usar esta palavra-chave em Java O objetivo é eliminar a confusão entre atributos de classe e parâmetros que possuem o mesmo nome.
Uso desta palavra-chave em Java
A seguir, apresentamos vários usos da palavra-chave "this" em Java:
- Pode ser usado para se referir à variável de instância da classe atual.
- Pode ser usado para invocar ou iniciar o construtor da classe atual.
- Ele pode ser passado como argumento em uma chamada de método.
- Ele pode ser passado como argumento em uma chamada de construtor.
- Pode ser usado para retornar a instância da classe atual.
Clique aqui. se o vídeo não estiver acessível
Como entender o significado desta palavra-chave com um exemplo.

- Aula: classe Conta
- Variável de instância: a e b
- Método Definir dados: Para definir o valor de a e b.
- Método Mostrar dados: Para exibir os valores de a e b.
- Método principal: onde criamos um objeto para a classe Account e chamamos os métodos set data e show data.
Desvendando a confusão dos compiladores
Vamos compilar e executar o código.
Nossa saída esperada para A e B deve ser inicializada com os valores 2 e 3, respectivamente.
Mas o valor é 0. Por quê? Vamos investigar.
No método Set data, os argumentos são declarados como a e b, enquanto as variáveis de instância também são nomeadas como a e b.
Durante a execução, o compilador fica confuso sobre se o "a" à esquerda do operador atribuído é uma variável de instância ou uma variável local. Portanto, ele não define o valor de "a" quando o método set data é chamado.
A solução é esta palavra-chave.
Acrescente “a” e “b” ao Java esta palavra-chave seguida por um operador ponto (.).
Durante a execução do código, quando um objeto chama o método setdata, a palavra-chave this é substituída pelo manipulador de objeto “obj”. (Veja a imagem abaixo.)
Então agora o compilador sabe,
- O “a” do lado esquerdo é uma variável de instância.
- Enquanto o “a” do lado direito é uma variável local.
O variáveis são inicializados corretamente e a saída esperada é mostrada.
Como o compilador lida com múltiplos objetos
Suponha que você escolha nomes diferentes para suas variáveis de instância e argumentos de método.
Mas desta vez, você cria dois objetos da classe, cada um chamando o método set data.
Como o compilador determinará se deve trabalhar com a variável de instância do objeto 1 ou do objeto 2?
Bem, a compilador anexa implicitamente a variável de instância com a palavra-chave this (imagem abaixo).
De tal forma que quando o objeto 1 está chamando o método set data, uma variável de instância é anexada por sua variável de referência.
Enquanto o objeto 2 chama o método set data, uma variável de instância do objeto 2 é modificada.
O compilador lida com isso automaticamente. Você não precisa adicionar a palavra-chave `this` explicitamente, a menos que uma situação excepcional o exija.
Exemplo: esta palavra-chave em Java Com Code
Exemplo: Para aprender a usar esta palavra-chave.
Passo 1) Copie o código a seguir em um bloco de notas.
class Account{ int a; int b; public void setData(int a ,int b){ a = a; b = b; } public void showData(){ System.out.println("Value of A ="+a); System.out.println("Value of B ="+b); } public static void main(String args[]){ Account obj = new Account(); obj.setData(2,3); obj.showData(); } }
Passo 2) Salve, compile e execute o código.
Passo 3) Os valores de a e b estão sendo mostrados como zero? Para corrigir o erro, adicione as linhas 6 e 7 com o esse palavra chave.
this.a =a; this.b =b;
Passo 4) Salve, compile e execute o código. Desta vez, os valores de a e b são definidos como 2 e 3, respectivamente.
Perguntas Frequentes
Confira nosso artigo sobre Java Questões de entrevista:- Acesse aqui











