Bom pessoal,
Eu de novo com uma duvida boba de iniciante :oops:
eu queria saber para q serve this e qnd é q
usa ele com parametro
[color=red]Exemplo:[/color] this(null, date, dateFormatString, dateEditor);
E qnd usa ele com um ponto
[color=red]Exemplo:[/color] return this.idade;
tds os exemplos foram pegos aki no GUJ.
Vlw ai quem pode ajudar!!!
this se refere ao objeto atual. Por exemplo:
voce tem um objeto bola com uma propriedade cor, pode acessar a propriedade cor com this.cor
Já o método this() com ou sem parametros se refere ao construtor da tua classe. Este só pode ser usado dentro de outro construtor
this refere-se a se proprio, ele é necessário em situações que vc precisa referenciar o proprio objeto…
por exemplo
[code]public class Pessoa {
private String nome;
private int idade;
public Pessoa() {
//não precisa escrever esse super, pois implicitamente o compilador faz isso…
//o super, quer dizer que ele chama o construtor do objeto pai…
super();
}
public Pessoa(String nome) {
//esse this, avisa que é para passar para o construtor de baixo, que tem o nome e idade
//assim quando vc cria uma pessoa apenas pelo nome, é o mesmo que criar uma com o nome
//e com a idade igual a 18
this(nome,18);
}
public Pessoa(String nome, int suaIdade) {
//o this aqui fala… que se refere-se ao campo nome do objeto, e não o que esta no método
//caso não houvesse o this… o valor do nome do objeto não seria mudado.
this.nome = nome;
//aqui não precisa do this, pois não existe a variavel idade dentro do método, podendo esta
//ser referenciada sem o this
idade = suaIdade;
}
public String getNome() {
return nome;
}
public int getIdade() {
return this.idade; //aqui não precisa usar o this, mais pode ser usado mesmo assim…
}
public void setIdade(int idade) {
idade = idade; //como aqui não foi usado o this, o valor da data não sera alterado
}
public void setNome(String nome) {
this.nome = nome; //aqui vai ser alterado corretamente
}
}[/code]
Com o this você identifica a variavel local da classe. Exemplo: cuando você tem uma variavel local chamada String nome e outra variavel também chamada String nome que vem numa assinatura de um método, com o this.nome você chama a variavel local. E se você não usa o this, vai chamar sempre a variavel do método.