| Autor |
Mensagem |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 22/11/2007 12:00:51
|
Hahu
What is classpath?
Membro desde: 27/07/2006 14:17:28
Mensagens: 9
Offline
|
Fala Guj,
Boa tarde a todos,
Galera, to com essa dúvida ..eee eu não sei se já responderam aqui no forum..mas ..lá vai ..para que serve o "this" na class?
exp1:
// mutator method
public void setCpf(String cpf)
{
this.cpf = cpf;
}
exp2:
// mutator method
public void setCpf(String c)
{
cpf = c;
}
Ela faz o que? identifica o que ? ou referencia o q?
Abs de seu amigo Hahu
|
|
|
 |
|
|
![[Post New]](/templates/default/images/icon_minipost_new.gif) 22/11/2007 12:08:31
|
eduveks
GUJ Ranger
![[Avatar]](/images/avatar/bce9abf229ffd7e570818476ee5d7dde.png)
Membro desde: 19/04/2005 07:45:40
Mensagens: 831
Localização: Lisboa - Portugal
Offline
|
this é a referência da própria class.
serve para:
Assim entende melhor?
Quando as variaveis tem nomes diferentes, ai não precisa de usar o this.
Mas quando existe duas variáveis com o mesmo nome, para distinguir qual é a variável externa e qual é a variável interna usa-se o this para referenciar a variável externa...
Assim o this.cpf se refere ao cpf private String cpf
Sakou ?
|
http://www.cajuscript.org
http://eduveks.blogspot.com |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 22/11/2007 12:10:00
|
davidbuzatto
Moderador
![[Avatar]](/images/avatar/7ba6d33c373fea56b7258003b16c68e5.jpg)
Membro desde: 07/08/2004 23:47:57
Mensagens: 4013
Localização: Vargem Grande do Sul - SP
Offline
|
O this é para indicar explicitamente que você está usando algo do objeto da classe.
Por exemplo (atenção às cores - usei tracinhos ao invés de espaços pois não usei a formatação do GUJ):
public class Teste {
----private String cpf;
----public setCpf( String cpf ) {
--------this.cpf = cpf;
----}
}
Nesse exemplo (igual ao seu), usa-se o this para indicar que deve-se atribuir ao campo cpf da classe Teste o valor de cpf que é parâmetro do método setCpf. Como o Netuno disse, se fossem variáveis com nomes diferentes não seria necessário utilizar o this. O this nesse caso se faz necessário pois as variáveis tem o mesmo nome. Isso ai é conhecido com shadowing, ou seja, vc "sombreia" a variável de escopo de instância ou de classe com a variável de escopo do método.
Como falei, o this sempre e usado para fazer referência explícita a algum membro da classe.
Até mais!
This message was edited 2 times. Last update was at 22/11/2007 12:14:02
|
Seja educado. Agradeça quem te ajudou. Não custa nada.
Dúvidas de Java? Utilize o fórum! Não respondo via MP.
"Any fool can write code that a computer can understand. Good programmers write code that humans can understand." (Fowler)
"A vida é um escândalo, e no final dá sempre errado. O que humaniza o homem é o fracasso."
http://davidbuzatto.com.br | GitHub | uHunt | CV Lattes | Last.fm |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 22/11/2007 12:12:38
|
spycall
JavaTeenager
![[Avatar]](/images/avatar/c54bc2ded4480856dc9f39bdcf35a3e7.jpg)
Membro desde: 26/04/2005 14:29:59
Mensagens: 189
Localização: São paulo
Offline
|
ele referencia a própria classe, por exemplo:
se vc tem um metodo que recebe como parametro um objeto, e nesse objeto vc chama esse metodo vc passa this;
|
No mundo existem 10 tipos de pessoas, as que conhecem e as que não conhecem binário. |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 22/11/2007 12:18:02
|
peczenyj
Moderador
![[Avatar]](/images/avatar/299dc35e747eb77177d9cea10a802da2.jpg)
Membro desde: 26/03/2006 23:25:37
Mensagens: 3191
Localização: Rio de Janeiro
Offline
|
nunca é demais lembrar
this é uma referência à instancia atual do objeto e, com ela, vc consegue acessar atributos e, também, métodos. this não funciona sobre atributos estáticos (pra isso vc utiliza o nome da classe), muito menos vc pode utiliza-lo em métodos estaticos (afinal eles não estão no contexto de instância). seria um erro tentar usar this a partir do método main, por exemplo.
this também pode ser utilizado para chamar o construtor da sua classe
|
http://pacman.blog.br
'Não importa quanto alguém se dedique à tarefa. Ninguém consegue fazer a água da cascata cair para cima.' |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 22/11/2007 13:12:55
|
Hahu
What is classpath?
Membro desde: 27/07/2006 14:17:28
Mensagens: 9
Offline
|
Amigos,
Agradeço por mtos de vcs responderem a minha dúvida!
Nossa...graças a vcs e consegui resolver está questão..obrigado!
Abs de seu amigo Hahu
Que Deus abençõe a todos!
|
|
|
 |
|
|