| Autor |
Mensagem |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 14/11/2006 14:03:13
|
sunshine
JavaChild
![[Avatar]](/images/avatar/c8c900d24159eff62761e.jpg)
Membro desde: 28/09/2004 18:53:15
Mensagens: 111
Offline
|
Pessoal,
há possibilidade de executar um método privado através de reflexão, sendo que a execução não seja na mesma classe do método?
Lembrem isto é somente um exemplo o set e get privado.
Ex.:
test
erro
|
pfilipak |
|
|
 |
|
|
![[Post New]](/templates/default/images/icon_minipost_new.gif) 14/11/2006 14:09:55
|
Filipe Sabella
GUJ Expert
Membro desde: 12/03/2003 11:25:57
Mensagens: 4680
Offline
|
|
Former LIPE. |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 14/11/2006 14:12:29
|
sunshine
JavaChild
![[Avatar]](/images/avatar/c8c900d24159eff62761e.jpg)
Membro desde: 28/09/2004 18:53:15
Mensagens: 111
Offline
|
vlw exatamente o q eu queria!!!!!!!!!
|
pfilipak |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 14/11/2006 14:28:55
|
Luca
Moderador
![[Avatar]](/images/avatar/17e62166fc8586dfa4d1bc0e1742c08b.jpg)
Membro desde: 06/09/2002 14:30:10
Mensagens: 5810
Localização: São Paulo/SP ou Paraty/RJ
Offline
|
Olá
Por default, não. Se tentar acessar um membro private, protected ou package-private, receberá uma IllegalAccessException.
Porém, as classes Constructor, Field e Method extendem java.lang.reflect.AccessibleObject que tem o método setAccessible. Se quiser contornar esta limitação, você deve usar setAccessible antes de invocar o método.
Faça um teste.
Para impedir que algum outro desenvolvedor da sua equipe use este método para quebrar o encapsulamento, você precisa de um security.manager.
Coloque no arquivo (C:\Program Files\Java\jre1.6.0\lib\security) java.policy:
permission java.lang.reflect.ReflectPermission supressAccessChecks
Teste executando java -cp . -Djava.security.manager suaClasseComMain
[]s
Luca
|
Dare Obasanjo (Program Manager at Microsoft)
"The folks I know from across the industry who have to build large scale Web services on the Web today at Google, Yahoo!, Facebook, Windows Live, Amazon, etc are using RESTful Web services. The only times I encounter someone with good things to say about WS-* is if it is their job to pimp these technologies or they have already "invested" in WS-* and want to defend that investment."
CEP, JMS, JMX e coisas afins (ou não)
http://lucabastos.blogspot.com/ |
|
|
 |
|
|