Отладка — это техническая процедура поиска и устранения ошибок или дефектов в программе и получения ожидаемых результатов. Отладка включает в себя тестирование и мониторинг. Это очень сложно, когда подразделения программы тесно связаны между собой. Мы можем отлаживать программу, используя инструменты отладчика, которые следуют предписанным 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); } }
Здесь у нас есть программа, которая добавляет два числа и печатает вывод. Обратите внимание, что на каждом шаге мы вводили оператор print, который печатает состояние программы на консоли. Это традиционный подход к отладке программы.
Кроме того, у нас есть расширенные концепции, которые можно использовать для отладки таких программ, как:
- шаговый
- точки останова и
- исключения или точки наблюдения.
Типы отладки
Мы можем отлаживать программу, используя различные методы:
- Использование байт-кода Java (скомпилированная версия кода Java)
- Использование комментариев внутри программ
- Присоединение класса к запущенной программе
- Удаленная отладка
- Отладка по требованию
- Оптимизированная отладка кода
Java отладчики
Вот несколько примеров отладчиков Java, доступных на рынке:
- Среды IDE, такие как Eclipse, Netbeans и т. Д., Содержат собственные отладчики (Visual cafe, Borland, JBuilder).
- Автономные графические интерфейсы отладчика (такие как Jikes, отладчик платформы Java и JProbe)
- Отладчик командной строки (Sun’s JDB)
- Блокнот или VI управляемый (трассировка стека)
В этом руководстве рассказывается, как использовать отладчик командной строки, 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
Это нативный программный интерфейс, реализованный VM. Он предоставляет способы проверки и отладки состояния приложения, работающего на виртуальной машине. Это позволяет реализации (VM Implementer), которые могут быть легко включены в архитектуру отладки. Для связи также используется сторонний канал JDWP .
JDWP
Он определяет формат информации и запросы, которые передаются между процессом отладчика и интерфейсом отладчика. Основная цель наличия JDWP — дать возможность отладчику и отладчику обмениваться данными, когда они работают на разных виртуальных машинах или на разных платформах.
JDI
Это высокоуровневый интерфейс Java, реализованный в качестве внешнего интерфейса. Он определяет переменную информацию на уровне кода пользователя. Рекомендуется использовать слой JDI для всех разработок отладчика. Он использует JDWP для связи с JVM-отладчиком.