Boa noite,
Estou usando reflexão e tentei usar invoke para executar o método getNome() de pessoa,
mas não me retorna o valor do atributo.
O resultado deveria ser:
método: getNome
retorno: …retorno de testTestarRetorno()
Mas o retorno é:preciso de ajuda com o código abaixo.
…método: getNome
…retorno: null
Alguém pode me ajudar?
Obrigado.
Celso.
package teste;
import java.lang.reflect.InvocationTargetException;
import java.lang.reflect.Method;
public class TesteInvoke {
public static String testarRetorno() {
return "...retorno de testTestarRetorno()...";
}
public static void main(String[] args) throws IllegalAccessException,
IllegalArgumentException, InvocationTargetException {
Pessoa pessoa = new Pessoa();
pessoa.setRg("M-35");preciso de ajuda com o código abaixo.
pessoa.setNome("Maria Santiago");
Method [] mPessoa = pessoa.getClass().getDeclaredMethods();
for (int i = 0; i < mPessoa.length; i++) {
if (mPessoa[i].getName().compareTo("getNome") == 0) {
Object result = mPessoa[i].invoke(pessoa, new Object[]{});
System.out.println("método: " + mPessoa[i].getName());
System.out.println("retorno: " + result);
}
}
}
}
“Sou o que sou por aquilo que todos somos”.