This como usalo?

7 respostas
Raff

pessoal eu gostaria que alguem pude-se tirar a minha duvida de como funciona o this…

segue em anexo minha duvida… por que eu naun sei colocar direto intaun tive que anexar…

7 Respostas

G

Uma de suas utilidades é referenciar tipos construidos
Ex:

public class Exemplo {

private String nome="";
private int idade="";

public void setNome(String nome){

this.nome=nome;//Referencia tipo construído que recebe atributo nome

}
public void setIdade(int idade){

this.idade=idade;

//Referencia tipo construído que recebe atributo idade

}
public static void main(String args){

Exemplo exemplo = new Exemplo();

exemplo.setNome(Gustavo);

exemplo.setIdade(21);

}

}
diguix

Raff em uma linguagem bem popular , o this está dizendo que o evento passado eh daquele JButton.

quando chega na linha que diz assim: if(eve.getSource() == button)

eh como se o eve tivesse apontando para o button la em cima, pois vc passou o this como argumento e ele entendeu que açao era daquele botao.
imagine que o eve fosse substituido pelo nome do JButton…

não sei se fui claro,minha didática… deixa a desejar, mas qlq coisa estamos ai…

Abs’[]

Marck

OPÁ,

Aproveita e dá uma olhada aqui tb:

www.uol.com.br/michaelis

Att,
Marck

antoniopopete

Bem raff, o this é uma referência do objeto a ele mesmo.
Você só pode usar a referência this dentro do próprio objeto,pois this aponta para o proprio objeto.
Usamos this para referencias variaveis de instancia e métodos da classe, serve para deixar o codigo melhor elaborado e mais legivel.
Exemplo: voce tem um metodo que faz referencia a um atributo da classe X,o atributo nome que é uma String…E tem um parametro.

public void setNome(String nome){

    nome= nome;
}

Coomo voce faria para dizer que quer atribuir a variavel nome a sua variavel de instancia nome?
Usamos a referencia this.

public void setNome(String nome){

   this.nome= nome;
}

Também podemos usar this em construtores,para usarmos outros construtores da propria classe.
Exemplo,voce tem uma classe que tem um atributo saldo e tem os seguintes construtores:

public X(){

   System.out.println("Construtor sem argumnetnos");
   this.saldo= 0;

}


public X(String nome){

    this();//faz referencia a instrucao que diz que saldo = 0,ao inves de //repetirmos aqui tambem
   System.out.println("Construtor com 1 argumnetno");
   this.nome= nome;

}

public

E voce tambem pode usar this,com metodos,mais ou menos com a mesma sintaxe do atributo de classe,mas é pouco utilizado…
Espero ter ajudado

LPJava

nao vou nem comentar o antonio disse tudo ai… mais isso ai cara o this eh uma referencia ao proprio objeto apenas isso memorize isso referencia ao proprio objeto… eh chamado de this. e minusculo viu?

J

desculpem ressucitar o topico, mas como minha duvida era sobre o this, nao quis criar outro ja tendo um aqui,

eu entendo perfeitamente o uso do this para referenciar o atributo da classe…

porem exemplos como dentro de um metodo, tem return this; esse return this diz q é pra retornar o que exatamente???

ou entao o this passado como parametro para um metodo qualquer…
public void X(this); esse this aí significa o que exatamente para a função???

R

Oi. sempre que você usa this, vc esta referenciando o objeto atual.

Portanto, quando vc tem, por exemplo:

class UsandoThis{

   //...

   public UsandoThis retorneEuMesmo(){
      return this; //aqui você está retornando a instância atual que está rodando o método retorneEuMesmo().
   }

   public void passeMeParaOutroMetodo(){
      OutraClasse outraClasse = new OutraClasse();
      outraClasse.outroMetodo(this); //aqui você está passando para outroMetodo() a instância atual que está rodando o método passeMeParaOutroMetodo().
   }

   //...
}

class OutraClasse{
   public void outroMetodo(UsandoThis usandoThis){
       //faz o que quiser com a instância de UsandoThis.
   }
}

Só pra complementar o que os outros disseram antes (você não precisa se preocupar em entender isso, pode ser que vc se confunda com o que eu falei antes), você também pode usar this para referenciar a classe externa, dentro de uma classe interna.

Por exemplo:

class ClasseExterna(){
   class CasseInterna(){
      public void acessandoClasseExterna(){
         ClasseExterna instanciaExterna = ClasseExterna.this;
         //faz o que quiser com instanciaExterna.
      }
   }
}
Criado 30 de janeiro de 2007
Ultima resposta 3 de jul. de 2007
Respostas 7
Participantes 8