Organizational Research By

Surprising Reserch Topic

accessing private variables in java via reflection


accessing private variables in java via reflection  using -'I'm,trying,to,write,a,method,that,will,get,a,private,field,in,a,class,using,reflection.,,

Here's,my,class,(simplified,for,this,example):

public,class,SomeClass,{
,,,,private,int,myField;

,,,,public,SomeClass(),{
,,,,,,,,myField,=,42;
,,,,}

,,,,public,static,Object,getInstanceField(Object,instance,,String,fieldName),throws,Throwable,{
,,,,,,,,Field,field,=,instance.getClass().getDeclaredField(fieldName);
,,,,,,,,return,field.get(instance);
,,,,}
}

So,say,I,do,this:

SomeClass,c,=,new,SomeClass();
Object,val,=,SomeClass.getInstanceField(c,,"myField");

I'm,getting,an,IllegalAccessException,because,myField,is,private.,Is,there,a,way,to,get/set,private,variables,using,reflection?,,(I've,done,it,in,C#,,but,this,is,the,first,time,I've,tried,it,in,Java).,,If,you're,wondering,why,there,is,the,need,to,do,such,madness,:),,it's,because,sometimes,during,unit,testing,it's,handy,to,set,private,variables,to,bogus,values,for,failure,testing,,etc.'
asked Sep 7, 2015 by rajesh
edited Oct 2, 2015 by rajesh
0 votes
9 views



Related Hot Questions



Government Jobs Opening


...