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.:
private void setAlgumaCoisa(String algumaCoisa){
this.algumaCoisa = algumaCoisa;
}
private String getAlgumaCoisa() {
return algumaCoisa;
}
test
public void testSeSetAlgumaCoisa() throws Exception {
Piso algumaCoisa = Piso.class.newInstance();
Method metodoSet = Piso.class.getDeclaredMethod("setAlgumaCoisa", String.class);
Method metodoGet = Piso.class.getDeclaredMethod("getAlgumaCoisa");
metodoSet.invoke(algumaCoisa, "meu deus");
assertEquals("meu deus", metodoGet.invoke(algumaCoisa));
}
erro
java.lang.IllegalAccessException: Class com.ancar.importacaoScipa.modelo.PisoTeste
can not access a member of class
com.ancar.importacaoScipa.modelo.Piso with modifiers "private"