Percorrer FIELDS de um Objeto em JAVA  XML
Índice dos Fóruns » Java Avançado
Autor Mensagem
gimenezbr
HelloWorld
[Avatar]

Membro desde: 07/04/2010 23:08:09
Mensagens: 13
Localização: Ribeirão Preto - SP
Offline

Salve galera...
Eu tenho um método em C# onde consigo pegar um objeto e varrer seus campos(Fields) e pegar ou setar seus respectivos valores.
Só que estou tentando fazer algo parecido em java e não esta dando certo, vejam a seguinte classe:


Consigo percorrer todos os FIELDS e exibir seus respectivos nomes normalmente assim:



Só que eu queria ler o valor de um determinado FIELD, tentei assim:



Não funcionou, a idéia era ter o TRY dentro do FOR para ler o valor de cada FIELD, mas so pra explicar melhor coloquei fora testando com o field ID.
Vejam que tem 3 linhas comentadas, isso porque tentei de 4 formas e não consegui, a que chegou mais perto de funcionar foi:
"Field field = theClass.getDeclaredField("_id")"
Mas ai ele da erro de ACESSO NÃO PERMITIDO, deve ser por que o field é private, das outras formas da tudo como field não encontrado.

Alguém pode me dar uma luz?

Obs:
1) Estou usando isso em programação para Android;
2) Não entrei no mérito de field (_id) e método (getId), mas eu sei as diferenças, so que no C# isso pra mim é transparente, eu tenho uma classe quase que da mesma forma e consigo ler com esse raciocinio o valor do "método" público.

Rodrigo Gimenez

"...para que o mal vença basta que os bons não façam nada..."
[WWW] [MSN] [ICQ]
windsofhell
GUJ Master

Membro desde: 15/06/2007 08:31:17
Mensagens: 1687
Localização: Stockholm - Sweden
Offline

Talvez assim?


//Daniel

This message was edited 1 time. Last update was at 09/02/2012 09:30:10


Nao respondo MP!!!

Site: http://downhillracer.wordpress.com
Cesar Pizolato
JavaChild

Membro desde: 24/09/2009 13:38:13
Mensagens: 114
Offline

This message was edited 1 time. Last update was at 09/02/2012 09:50:35

[WWW]
gimenezbr
HelloWorld
[Avatar]

Membro desde: 07/04/2010 23:08:09
Mensagens: 13
Localização: Ribeirão Preto - SP
Offline

Não funcionou...
Fiz assim:



e ele da:

02-09 13:52:52.624: W/System.err(1484): java.lang.IllegalAccessException: access to field not allowed

E vou conseguir ler esse FIELD mesmo ele sendo PRIVADO?

Rodrigo Gimenez

"...para que o mal vença basta que os bons não façam nada..."
[WWW] [MSN] [ICQ]
gimenezbr
HelloWorld
[Avatar]

Membro desde: 07/04/2010 23:08:09
Mensagens: 13
Localização: Ribeirão Preto - SP
Offline

Opa Cesar Pizolato, deu certinho...

Muito Obrigado!

Rodrigo Gimenez

"...para que o mal vença basta que os bons não façam nada..."
[WWW] [MSN] [ICQ]
gimenezbr
HelloWorld
[Avatar]

Membro desde: 07/04/2010 23:08:09
Mensagens: 13
Localização: Ribeirão Preto - SP
Offline

Aproveitando o tópico, em C# posso fazer algo desse tipo:



ou seja, tenho uma classe _EntAtr, que são atributos que posso usar nos campos de um objeto e depois recuperar quando ler esse dado campo dessa classe.
Tem como fazer algo semelhante em JAVA? Se tem, como é e como posso ler esses atributos depois?

Na realidade, só precisava marca se determinado campo é obrigatório e se é chave primária.
Obrigado.

This message was edited 3 times. Last update was at 13/02/2012 15:26:50


Rodrigo Gimenez

"...para que o mal vença basta que os bons não façam nada..."
[WWW] [MSN] [ICQ]
Samuel S
HelloWorld

Membro desde: 11/02/2012 06:35:43
Mensagens: 12
Offline

gimenezbr wrote:
Na realidade, só precisava marca se determinado campo é obrigatório e se é chave primária.
Obrigado.


isso está cheirando a Annotations - dá uma olhada no tutorial: Annotations
gimenezbr
HelloWorld
[Avatar]

Membro desde: 07/04/2010 23:08:09
Mensagens: 13
Localização: Ribeirão Preto - SP
Offline

Exatamente isso, obrigado pela "Luz".

Esse artigo é simples e objetivo, para que precisar fica a deixa:

http://battisti.wordpress.com/2008/06/14/annotation-em-java

Abraços.

Rodrigo Gimenez

"...para que o mal vença basta que os bons não façam nada..."
[WWW] [MSN] [ICQ]
 
Índice dos Fóruns » Java Avançado
Ir para:   
Powered by JForum 2.1.8 © JForum Team