- Java 编程示例
- 示例 - 主页
- 示例 - 环境
- 示例 - 字符串
- 示例 - 数组
- 示例 - 日期和时间
- 示例 - 方法
- 示例 - 文件
- 示例 - 目录
- 示例 - 异常
- 示例 - 数据结构
- 示例 - 集合
- 示例 - 网络
- 示例 - 线程
- 示例 - 小应用程序
- 示例 - 简单 GUI
- 示例 - JDBC
- 示例 - 正则表达式
- 示例 - Apache PDF Box
- 示例 - Apache POI PPT
- 示例 - Apache POI Excel
- 示例 - Apache POI Word
- 示例 - OpenCV
- 示例 - Apache Tika
- 示例 - iText
- Java 教程
- Java - 教程
- Java 有用资源
- Java - 快速指南
- Java - 有用资源
如何在 Java 中打印 Exception 的堆栈
问题描述
如何打印 Exception 的堆栈?
解决方案
此示例展示了如何使用异常类的 printStack() 方法来打印异常的堆栈。
public class Main{
public static void main (String args[]) {
int array[] = {20,20,40};
int num1 = 15, num2 = 10;
int result = 10;
try {
result = num1/num2;
System.out.println("The result is" +result);
for(int i = 5; i >= 0; i--) {
System.out.println("The value of array is" +array[i]);
}
} catch (Exception e) {
e.printStackTrace();
}
}
}
结果
上述代码示例将生成以下结果。
The result is1 java.lang.ArrayIndexOutOfBoundsException: 5 at Main.main(Main.java:11)
以下是如何在 Java 中打印 Exception 的堆栈的另一个示例。
public class Demo {
public static void main(String[] args) {
try {
ExceptionFunc();
} catch(Throwable e) {
e.printStackTrace();
}
}
public static void ExceptionFunc() throws Throwable {
Throwable t = new Throwable("This is new Exception in Java...");
StackTraceElement[] trace = new StackTraceElement[] {
new StackTraceElement("ClassName","methodName","fileName",5)
};
t.setStackTrace(trace);
throw t;
}
}
上述代码示例将生成以下结果。
java.lang.Throwable: This is new Exception in Java... at ClassName.methodName(fileName:5)
java_exceptions.htm
广告