Guilherme,
não sei se entendi bem o seu caso, mas aqui está um exemplo pontual. Cuidado, tu não consegue acessar as cosias de Cliente pq está utilizando o THIS. Logo, teria que fazer mais uma cadeia de acessos por reflection para chegar no Cliente ou utilizar como fiz abaixo:
public void metodo()
throws IllegalAccessException, IllegalArgumentException, InvocationTargetException {
Method[] methods = Cliente.class.getMethods();
for(Method m : methods) {
if ("setCodigo".equals(m.getName())) {
m.invoke(cliente, new Object[]{1});
}
}
}
Abraços.
2012/12/3 Guilherme Bernardi <gui.bernardi09@gmail.com>
Bom dia.Alguém já precisou fazer algo semelhante:Eu tenho uma classe com atributos:
private Integer Numero;private String Data;private String Emissao;private Cliente Cliente;E eu faço uma consulta no banco SQLite e preciso que minha persistência repasse esse cursor carregando os dados nas propriedades dessa classe. Para eu construir o objeto atual retornado pelo banco.Meu problema exatamente é por exemplo, eu tenho uma propriedade que é do tipo Cliente.Eu preciso acessar o set do Código do Cliente lá da Classe Cliente, alguém sabe como faço isso?Quando são campos simples, tipo String, Integer, tudo bem eu consigo setá-los.@Overridepublic void CarregaDados(){this.Status = eStatus.Carregando;this.setTabela(this.getClass().getSimpleName());this.setTabelaSelecao("Numero = " + this.getNumero().toString());super.CarregaDados();Field[] campos = this.getClass().getDeclaredFields();for(int i = 0; i < campos.length; i++) {if(campos[i].getType().equals(Cliente.class)){campos[i].setAccessible(true);}}}Obrigado desde já.--
--
Ricardo Stephan (Carvo).
-- ______________________________________
Analista Desenvolvedor
Professor
Java e PHP, agora Android também...
________________________________________
________________________________________






0 comentários:
Postar um comentário