![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]()
![]()
|
![]() |
Java-приложение: заглянем внутрьСуществует множество способов отладки программ. Эта статья поможет любому начинающему и опытному программисту научиться отлаживать программы написанные на Java.Несколько полезных классов Java позволят упростить процесс отладки. Чтобы отладить приложение, можно поступить по-разному. Во-первых, можно воспользоваться штатным отладчиком из какого-либо программного пакета. Во-вторых, можно самостоятельно вычислить ошибку - логически, по внешним признакам. И в-третьих, можно "подглядеть", что же там такое творится внутри вашей программы. Для этого, последнего, способа и существуют всевозможные утилиты и библиотеки. Так, в библиотеке MFC из компилятора Visual C++ есть специальные макросы, которые во время запуска примера пересылают требуемую информацию в окно специальной утилиты-монитора (не правда ли, похоже на подглядывание в замочную скважину?). Подобный мониторинг данных стар, как само программирование, и очень прост: нужно выводить на экран дисплея значения переменных, расположенных в участках программы, вызывающих сомнения. Просматривая полученные данные, можно последовательно приблизиться к ошибочному участку. Что касается Java-приложений, то и здесь мониторинг оказывается возможным, если воспользоваться выводом данных в стандартные потоки вывода и ошибок - System.out и System.err. Часто можно обнаружить в исходных текстах такую строку: System.out.println("Входим в конструктор класса"); В результате выполнения данной команды в консольном окне приложения появится текстовая строка "Входим в конструктор класса" - знак того, что выполнение программы происходит в заданном месте. Нельзя ли упростить мониторинг Java-приложений? Конечно же можно. Немного фантазии и понимание, как работают стандартные потоки out и err, нам помогут. В исходных текстах в файле System.java есть описания стандартных потоков: ... public final static InputStream in = nullInputStream(); ... public final static PrintStream out = nullPrintStream(); ... public final static PrintStream err = nullPrintStream(); ... Продолжение статьи: ч.1 Продолжение статьи: ч.2 Продолжение статьи: ч.3 Продолжение статьи: ч.4 Продолжение статьи: ч.5 Продолжение статьи: ч.6 Другие статьи по теме: - практическое введение в программирование на javascript- почтовая программа - своими руками! - Java: управление ресурсами - Java. объектно-ориентированное программирование с интерфейсами - революция java ![]() |
![]() |
![]() |
![]()
![]()
![]() ![]() ![]() |
![]() |
![]() |
2006-2023 © SMTI.RU Главная страница | Связаться с нами |