作为一个Java开发者,在处理异常时经常会遇到堆栈跟踪的概念。
在本教程中,我们将理解堆栈跟踪是什么以及如何在编程/调试中使用它。 此外,我们还将了解_StackTraceElement_类。最后,我们将学习如何使用_Thread_和_Throwable_类来获取它。
2. 什么是堆栈跟踪?
堆栈跟踪,也称为回溯,是堆栈帧的列表。 简单来说,这些帧代表了程序执行过程中的一个时刻。
一个堆栈帧包含了代码调用的方法的信息。它是从当前方法开始,一直延伸到程序开始时的一系列帧。
大约 3 分钟
作为一个Java开发者,在处理异常时经常会遇到堆栈跟踪的概念。
在本教程中,我们将理解堆栈跟踪是什么以及如何在编程/调试中使用它。 此外,我们还将了解_StackTraceElement_类。最后,我们将学习如何使用_Thread_和_Throwable_类来获取它。
堆栈跟踪,也称为回溯,是堆栈帧的列表。 简单来说,这些帧代表了程序执行过程中的一个时刻。
一个堆栈帧包含了代码调用的方法的信息。它是从当前方法开始,一直延伸到程序开始时的一系列帧。
在这篇短文中,我们将探讨为什么我们的Java异常堆栈跟踪中可能会出现未知来源,以及如何修复它。
Java类文件包含可选的调试信息以便于调试。我们可以在编译时选择是否以及添加哪些调试信息到类文件中。这将决定在运行时可用的调试信息。
让我们查看Java编译器的帮助文档,看看可用的各种选项:
javac -help
用法:javac `<选项>` `<源文件>`
其中可能的选项包括:
-g 生成所有调试信息
-g:none 不生成调试信息
-g:{lines,vars,source} 只生成部分调试信息