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)