This?

5 respostas
diogo.delgaudio

quando é usado o this?
alguém pode me dar um exemplo?

obrigado

5 Respostas

elomarns

Olá diogo.delgaudio. Seja bem vindo ao GUJ!

A palavra-chave this é usada para referir-se ao objeto utual de forma que você possa acessar os seus membros(váriaveis de instância e métodos). Quando você chama um método não-estático em um objeto, o corpo do método usa implicitamente o this para acessar as variáveis de instância e métodos desse objeto, sendo que você também pode usar o this implicitamente, se quiser, no caso mencionado. Veja abaixo um exemplo:

public class Aluno
{
   private double media;

   public boolean estaAprovado()
   {
      if(media >= 7) 
         return true;
      else
         return false;
   }
}

No código acima, o this é usado implicitamente quando um objeto chama este método, mas você poderia incluí-lo diretamente, ficando assim:

public class Aluno
{
   private double media;

   public boolean estaAprovado()
   {
      if(this.media >= 7) 
         return true;
      else
         return false;
   }
}

Veja abaixo outra utilzação da palavra-chave this:

public class Aluno
{
   private String nome;

   public void setNome(String nome)
   {
      this.nome = nome;
   }
}

Veja nesse exemplo que tanto a variável de instância como o parâmetro do método setNome se chamam nome. Sendo assim, o this foi usado para informar ao compilador que você quer que, ao ser chamado o método setNome em um objeto da classe Aluno, a váriavels de instância nome deste objeto receba o valor passado para o parâmetro nome. Ou seja, o this funciona como uma referência para o objeto atual, permitindo ao compilador diferenciar os dois nome.

Espero ter esclarecido a sua dúvida.

R

Vc pode usar quando vc declara uma variavel na classe e passa uma variavel com o mesmo nome como parametro, ai vc tem que usar o this. ex:

public class exemplo {
private int seila;

public exemplo (int seila){
     seila = this.seila;
}

}

Esse é um exemplo, mas tem mais aplicações mas é praticamente com a mesma finalidade.

Falow, espero ter ajudado

bcartaxo

kaaaa, lembro q qd tava aprendendo ajva viajava no this =PP

Seguinte:

O this é um ponteiro para o próprio objeto, simplismente isso!! =PP

Exemplo:

Situação clara em q se n se usar this irá ocorrer erro: Se vc tem uma variável local (em um método) que tem o mesmo nome de um atributo (variável de instância), se vc n usar this o método n exergará a variável local (tem até um nome pra essa situação, se n me engano eh ofuscamento de variável, algo assim, n lembro mais). Pois bem, eis um trecho de código.

public class Pessoa {

	private String nome;

	public String getNome() {
		return nome;
	}

	public void setNome(String nome) {
		this.nome = nome;
	}	
	
}

Note q no método setNome existe uma variável com o nome nome, logo a única foram de vc manipular a variável de instância npme é através do this.

A definição do this como ja foi dita a acima (só pra reforçar) é um ponteiro para o objeto em questão.

Editado: Bah.... o kra ai de cima respondeu enquanto eu tava escrevendo, ele falou td =P

diogo.delgaudio

valeu, galera! xD

ramilani12

Sá acrescentando essa bela explicação do elomarns o this nesse caso foi usado para resolver ambiguidade das variáveis

this.nome(atributo da classe) = nome(param);
Criado 13 de maio de 2007
Ultima resposta 14 de mai. de 2007
Respostas 5
Participantes 5