Подтвердить что ты не робот

Точки останова данных в java/eclipse

при разработке С++ с VS у вас есть эта замечательная функция точек останова данных, которые запускаются при изменении данных по определенному адресу в памяти.

Есть ли аналогичная функция при разработке java в eclipse?

спасибо!

edit: о функции "suspend when value changes": у меня создается впечатление, что выполнение должно все равно доходить до строки, где находится точка останова. Дело в том, что я хочу, чтобы он срабатывал где угодно, как только значение изменилось.

4b9b3361

Ответ 1

Вы можете установить точку наблюдения в поле: поместите курсор в строку, где объявляется поле, и выберите меню Run -> Toggle Watchpoint
или просто установите точку останова, дважды щелкнув по левому краю на этой строке.

Вы можете изменить свойства точки наблюдения, такие как suspend on field access или suspend on field modification после добавления. Просто щелкните правой кнопкой мыши по часовой стрелке на левом краю и выберите Breakpoint Properties...

Поиск справки для точки наблюдения для получения дополнительной информации:

Контрольная точка - это особая точка останова, которая останавливает выполнение приложения всякий раз, когда изменяется значение данного выражения, без указания того, где это может произойти....

Ответ 2

Использование вида Variable:

  • щелкните правой кнопкой мыши по полю и выберите "Toggle Watchpoint", а затем
  • снова щелкните один и тот же экземпляр и выберите "Контрольные точки экземпляра...", который позволяет ограничить определенную точку останова для данного экземпляра.

Обратите внимание, что производительность, вероятно, не так хороша, как с точки прерывания аппаратного обеспечения памяти (например, в VС++).

Ответ 3

В свойствах точки останова вы можете сделать это условным и проверить переключатель "Приостановить при изменении значения".

Ответ 4

Щелкните правой кнопкой мыши точку останова и выберите Breakpoint properties.

В открывшемся окне выберите: Conditional -> Suspend when value changes

Ответ 5

Ближайшей задачей будет редактирование свойств точки останова. Вы можете добавить условия для проверки отдельных значений. Другой способ - добавить точку останова к методу setter.

Вы можете установить свойства точки останова, щелкнув правой кнопкой мыши на уже заданной точке останова в представлении точки останова.

Ответ 6

Насколько я знаю, такой универсальной функции в Eclipse нет. Однако вы можете дать некоторые условия существующей точке останова:

Добавить точку останова где-то в вашем коде. Затем в окне "Точка останова" щелкните правой кнопкой мыши по нему, затем выберите "Свойства точки останова". В панели вы можете добавить условие, которое должно быть проверено, чтобы приложение остановилось в этой точке останова (например, if (foo > 0)).

Это не совсем то, что вы хотите, но я не думаю, что Eclipse предоставляет такую ​​функцию.