fork download
  1. import java.util.*;
  2. import java.lang.reflect.*;
  3.  
  4. class Ideone {
  5. public static void main(String[] args) throws Exception {
  6. ClassA a = new ClassA();
  7. new ClassB().entry(a);
  8. a.print();
  9. }
  10. }
  11. class ClassA {
  12. private List<Object> list = new ArrayList<>();
  13. void print() {
  14. System.out.println(this.list);
  15. }
  16. }
  17. class ClassB {
  18. @SuppressWarnings("unchecked")
  19. public void entry(ClassA instance) throws Exception {
  20. Field list = instance.getClass().getDeclaredField("list");
  21. list.setAccessible(true);
  22. List<Object> actualList = (List<Object>) list.get(instance);
  23. actualList.add(new Object());
  24. // list.set(instance, actualList);
  25. }
  26. }
Success #stdin #stdout 0.09s 27708KB
stdin
Standard input is empty
stdout
[java.lang.Object@7f31245a]