Avatar ·

什么是 stack trace 以及如何在 Java 中使用它来调试错误?

大家好!我是 Java 新手,经常遇到错误,控制台会输出大段红色文本。我知道这叫做 "stack trace"(堆栈跟踪),但老实说,我不太明白如何阅读它,以及它如何帮助我修复错误。 例如,我有一个简单的代码: ```java public class Calculator { public static void main(String[] args) { int result = divide(10, 0); System.out.println("结果: " + result); } public static int divide(int a, int b) { return a / b; } } ``` 当我运行它时,我收到这样的消息: ``` Exception in thread "main" java.lang.ArithmeticException: / by zero at Calculator.divide(Calculator.java:7) at Calculator.main(Calculator.java:3) ``` 我明白错误与除以零有关,但那些带有 "at" 的行是什么意思?我如何知道问题是从哪一行开始的,以及如何修复它?我听说 stack trace 可以显示