Access to private inherited fields via reflection in Java
This should demonstrate how to solve it: import java.lang.reflect.Field; class Super { private int i = 5; } public class B extends Super { public static void main(String[] args) throws Exception { B b = new B(); Field f = b.getClass().getSuperclass().getDeclaredField(“i”); f.setAccessible(true); System.out.println(f.get(b)); } } (Or Class.getDeclaredFields for an array of all fields.) Output: 5