В чем разница между Step Into и Step Over в отладчике Eclipse?

Я хочу отладить весь stream Java-программы. В чем разница между F5 (шаг вперед) и F6 (шаг выше) в eclipse?

    Рассмотрим следующий код с вашим текущим указателем инструкции (строка, которая будет выполнена следующая) в f(x); строка в g() , вызванная линией g(2) в main() :

     public class testprog { static void f (int x) { System.out.println ("num is " + (x+0)); // <- step into } static void g (int x) { -> f(x); // <----------------------------------- current location f(1); // <----------------------------------- step over } public static void main (String args[]) { g(2); g(3); // <----------------------------------- step out of } } 

    Если вы должны были войти в этот момент, вы перейдете к строке println() в f() , войдя в вызов функции.

    Если вы должны были переступить в этот момент, вы перейдете к f(1); line в g() , перейдя через вызов функции.

    Еще одна полезная функция отладчиков - это шаг за шагом или возврат шага. В этом случае возврат шага в основном приведет вас к текущей функции, пока вы не вернетесь на один уровень. Другими словами, он будет проходить через f(x) и f(1) , а затем вернуться к вызывающей функции, чтобы закончить в g(3); в main() .

    Eclipse (по крайней мере, Europa, единственное, что мне сейчас подходит) использует F5 для step into F6 для перехода по step over и F7 для step return .

    При отладке строк кода, вот обычные сценарии:

    • ( Step Into ) Вызывается метод, который вы хотите отлаживать в коде этого метода, поэтому следующий шаг – перейти к этому методу и продолжить отладку шаг за шагом.
    • ( Step Over ) Вызывается метод, но вам не нужно отлаживать этот конкретный вызов, поэтому вы хотите, чтобы отладчик полностью выполнил этот метод как один полный шаг.
    • ( Step Return ) Вы поэтапно отлаживаете этот метод, и вы просто хотите, чтобы отладчик выполнял весь метод до тех пор, пока он не вернется как один полный шаг.
    • ( Resume ). Вы хотите, чтобы отладчик возобновил «нормальное» выполнение вместо пошагового
    • ( Line Breakpoint ) Вам все равно, как это произошло, но если выполнение достигает определенной строки кода, вы хотите, чтобы отладчик временно приостановил выполнение там, чтобы вы могли решить, что делать.

    Eclipse имеет другие расширенные функции отладки, но это основные основы.

    Смотрите также

    • Бесплатный учебник по видео: Eclipse и Java: использование отладчика
    • IBM / DeveloperWorks / Отладка с платформой Eclipse
    • IBM / DeveloperWorks / Изучите основы отладки

    шаг вовнут в вызовы методов
    step over просто выполнит линию и перейдет к следующей

    Вы не можете просмотреть детали метода, используя шаг. Если вы хотите пропустить текущую строку, вы можете использовать шаг вперед, тогда вам нужно только нажать F6 только один раз, чтобы перейти к следующей строке. И если вы считаете, что в методе есть что-то неправильно, используйте F5 для изучения деталей.

    Step Into Вызывается следующее выражение в текущей выбранной строке, и выполнение приостанавливается в следующей исполняемой строке в вызываемом методе.

    Step Over Текущая выбранная строка выполняется и приостанавливается на следующей исполняемой строке.

    Interesting Posts

    Что такое оболочка EFI?

    Экземпляр SSH на экземпляр эластичного бобового стежка

    Как отправить данные в виде данных формы вместо полезной нагрузки запроса?

    Как сделать блок edittext в диалоговом окне

    Как предотвратить прыжок на якорный щелчок?

    SSH аутентификация с открытым ключом не выполняется

    Создание моментального снимка системы Windows 7

    Каков текущий каталог в пакетном файле?

    Может ли Google Chrome открывать локальные ссылки?

    Как вы печатаете unsigned long long int (спецификатор формата для unsigned long long int)?

    Как сделать адрес сервера имен постоянным в /etc/resolv.conf?

    Цитирование в алфавитном порядке в Bash

    синусоидальной волны, которая медленно увеличивает частоту от f1 до f2 в течение заданного времени

    Firebase: настройка дополнительных пользовательских свойств

    Неправильный URL-адрес перенаправления на поисковые системы для всех браузеров (yahoo в моем случае)

    Давайте будем гением компьютера.