JDB - Введение

Отладка - это техническая процедура для поиска и удаления ошибок или дефектов в программе и получения ожидаемых результатов. Отладка включает тестирование и мониторинг. Это очень сложно, когда части программы тесно связаны. Мы можем отлаживать программу с помощью инструментов отладчика, которые соответствуют предписанным API. Отладчик позволяет вам пройти через каждый аспект кода, проверить все элементы и удалить ошибки, если таковые имеются.

Методы отладки

Существуют разные методы отладки Java-программы. Старый метод отладки заключается в использовании операторов печати в конце каждого сегмента, который выводит операторы трассировки на консоль. Взгляните на следующий код.

pubic class Add
{
   public static void main(String ar[])
   {
      int a = ar[0];
      system.out.println("A : " + a);
      
      int b = ar[1];
      system.out.println("B : " + b);
      
      int c = a + b;
      system.out.println("C = a + b : " + c);
   }
}

Здесь у нас есть программа, которая складывает два числа и выводит результат. Обратите внимание, что на каждом шаге мы ввели оператор печати, который выводит состояние программы на консоль. Это традиционный подход к отладке программы.

Кроме того, у нас есть расширенные концепции, которые можно использовать для отладки программы, например:

  • stepping
  • точки останова и
  • исключения или точки наблюдения.

Типы отладки

Мы можем отлаживать программу разными способами:

  • Использование байт-кода Java (скомпилированная версия кода Java)
  • Использование комментариев внутри программ
  • Присоединение класса к запущенной программе
  • Удаленная отладка
  • Отладка по запросу
  • Оптимизированная отладка кода

Отладчики Java

Вот несколько примеров отладчиков Java, доступных на рынке:

  • IDE, такие как Eclipse, Netbeans и т. Д., Содержат собственные отладчики (Visual cafe, Borland, JBuilder)
  • Графические интерфейсы автономного отладчика (например, Jikes, отладчик платформы Java и JProbe)
  • Отладчик командной строки (Sun JDB)
  • Блокнот или виртуальный прибор (трассировка стека)

В этом руководстве рассказывается, как использовать отладчик командной строки, jdb.

JDB

Отладчик Java (JDB) - это инструмент для классов Java для отладки программы в командной строке. Он реализует архитектуру отладчика платформы Java. Это помогает в обнаружении и исправлении ошибок в программе Java с использованием интерфейса Java Debug Interface (JDI).

JDB в JDK

Следующая архитектура определяет роль JDB в JDK. Он состоит в основном из трех блоков:

  • Интерфейс Java Virtual Machine Tool (JVM TI)
  • Пул подключения отладки Java (JDWP)
  • Интерфейс отладчика Java (JDI)

JVM TI

Это собственный программный интерфейс, реализованный виртуальной машиной. Он предоставляет способы проверки и отладки состояния приложения, запущенного на виртуальной машине. Это позволяет реализовать средство реализации (средство реализации виртуальных машин), которое можно легко включить в архитектуру отладки. Он также использует сторонний канал под названиемJDWP для связи.

JDWP

Он определяет формат информации и запросы, которые проходят между процессом отладки и интерфейсом отладчика. Основная цель наличия JDWP - позволить отладчику и отладчику взаимодействовать, когда они работают на отдельных виртуальных машинах или на разных платформах.

JDI

Это высокоуровневый интерфейс Java, реализованный как внешний интерфейс. Он определяет информацию о переменных на уровне кода пользователя. Рекомендуется использовать уровень JDI для всей разработки отладчика. Он использует JDWP для связи с отлаживаемой JVM.