1. getDeclaredFields method
- Java Reflection을 사용하면 특정 Instance의 Member Variable, Method등에 접근할 수 있음
- Member Variable에 접근할 수 있는 방법으로 getFields Method를 사용하는데, public Member Variable에만 접근이 가능함
- private을 포함한 모든 Member Variable에 접근하기 위해서 getDeclaredFields Method를 사용함
2. setAccessible method
- getDeclaredFields method를 통해Member Variable 정보에 접근이 가능하지만, Member Variable의 value에는 접근이 불가능함
- private member variable value를 read/write하기 위해서 setAccessible method를 통해 해당 Field value에 접근을 허용해줘야 함
- setting없이 private member variable의 value에 접근하게 되면 IllegalAccessException 예외가 발생함