Throwable.printStackTrace()
Печатает исключение и цепочку вызовов, которая к нему привела, в поток ошибок.
Доступно с: Java 1.0
Синтаксис
public void printStackTrace()Примеры
Стек вызовов показывает, где возникла ошибка:
int parse(String s) {
return Integer.parseInt(s);
}
void main() {
try {
parse("abc");
} catch (NumberFormatException e) {
e.printStackTrace();
}
IO.println("done");
}Результат:
java.lang.NumberFormatException: For input string: "abc"
at java.base/java.lang.NumberFormatException.forInputString(NumberFormatException.java:67)
at java.base/java.lang.Integer.parseInt(Integer.java:565)
at java.base/java.lang.Integer.parseInt(Integer.java:662)
at Main.parse(Main.java:2)
at Main.main(Main.java:7)
doneПримечания
Читайте стек сверху вниз: первая строка — тип и сообщение, дальше — методы от места ошибки до main, с файлом и номером строки. Здесь вывод получен для скомпилированной программы; при запуске одним файлом (java Main.java) в конце появятся ещё несколько строк загрузчика. Вывод идёт в System.err. В настоящих приложениях вместо этого метода исключение передают в логгер.
См. также
- Throwable.getMessage() — Возвращает текст сообщения исключения.
- Throwable.getCause() — Возвращает исходное исключение, которое было обёрнуто в текущее.
Вопросы и ответы по теме
В учебнике
- try, catch и finally — Обработка исключений в Java — блоки try и catch, несколько catch, multi-catch, finally и выбрасывание исключений через throw.