Как отладчик Eclipse получает информацию о закрытых переменных внутри класса? - PullRequest
5 голосов
/ 04 мая 2010

это был заданный мне вопрос об интервью. Я смутно ответил, что он использует отражения Java ... но я не был уверен. как это работает?

Ответы [ 2 ]

9 голосов
/ 04 мая 2010

Ключ к вашему вопросу почти наверняка java.lang.reflect.AccessibleObject, что позволяет отладчику отключать проверки контроля доступа и возиться. Spring использует тот же механизм для получения доступа к переменным для внедрения зависимостей.

7 голосов
/ 04 мая 2010

Используется Java Debugger , который предоставляет команды для этого:

jdb print myObj.myInstanceField

В былые времена люди действительно делали это из командной строки! :)

ПРИМЕЧАНИЕ. Для отображения локальных переменных содержащий класс должен быть скомпилирован с опцией javac -g.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...