foo(bar(),
baz());
Самый простой способ сделать это - сделать разрыв строки перед baz () и разместить точку останова как обычно на строке, на которой находится baz (). В Java окружение вызова метода таким образом, что разрыв строки не повлияет на его оценку.
скриншот из затмения
Обновление:
OP хочет выбрать вызов baz и установить точку останова для оценки самого этого выражения без каких-либо дополнительных условий для вашей точки останова или редактирования исходного кода.
Насколько я знаю, это невозможно с помощью стандартного средства отладки, поставляемого с Eclipse.
Однако вы можете добиться этого эффекта, используя условные контрольные точки . В Eclipse вы создаете или выбираете точку останова как обычно, а затем получаете доступ к условным параметрам в представлении точек останова.
Доступ к точке останова через пункт меню Окно -> Показать представление -> Точки останова. Оказавшись там, выберите или создайте точку останова, затем проверьте условную опцию. Затем вы должны описать условие, которое соответствует вашему окружающему коду и потребностям. Ваша точка останова сработает, когда условие выполнено. Например, указав номер строки сайта вызова или имя метода.
Просмотр точек останова в Eclipse, с включенными условными выражениями
Я основал свой ответ на этом SO-ответе .
В моем собственном примере кода у меня есть следующая настройка:
a(){
baz();
m();
}
m(){
foo(bar(), baz());
}
и моя точка останова находится в базе (). Добавление условного оператора
Thread.currentThread().getStackTrace()[2].getMethodName().equals("m")
моя точка останова означает, что она срабатывает только тогда, когда baz () вызывается из m (), а не из ().