java.lang.Throwable.getStackTrace()方法实例
java.lang.Throwable.getStackTrace() 方法返回堆栈跟踪元素的数组,每个代表一个堆栈帧。数组的第零个元素(假设该阵列的长度为非零)表示堆栈,它是序列中的最后一个方法调用的顶部。这是在此抛出对象的创建和抛出点。
所述数组的最后一个元素(假设该阵列的长度为非零)表示堆栈的底部,它是在序列中的第一个方法调用。
声明
以下是java.lang.Throwable.getStackTrace()方法的声明
public StackTraceElement[] getStackTrace()
参数
-
NA
返回值
此方法返回表示有关此抛出堆栈跟踪堆栈跟踪元素的数组。
异常
-
NA
例子
下面的例子显示java.lang.Throwable.getStackTrace()方法的使用。
package com.yiibai; import java.lang.*; public class ThrowableDemo { public static void main(String[] args) { try { ExceptionFunc(); } catch(Throwable e) { // access to the stack trace StackTraceElement[] trace = e.getStackTrace(); System.err.println(trace[0].toString()); } } public static void ExceptionFunc()throws Throwable { Throwable t = new Throwable("This is new Exception..."); StackTraceElement[] trace = new StackTraceElement[] { new StackTraceElement("ClassName","methodName","fileName",15) }; // sets the stack trace elements t.setStackTrace(trace); throw t; } }
让我们来编译和运行上面的程序,这将产生以下结果:
ClassName.methodName(fileName:15)