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…
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…
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);
}
}
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’[]
OPÁ,
Aproveita e dá uma olhada aqui tb:
www.uol.com.br/michaelis
Att,
Marck
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
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?
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???
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.
}
}
}