描述
這個java.lang.Throwable.setStackTrace() 方法設置將由 getStackTrace() 返回並由 printStackTrace() 和相關方法打印的堆棧跟蹤元素。
聲明
以下是聲明java.lang.Throwable.setStackTrace()方法
public void setStackTrace(StackTraceElement[] stackTrace)
參數
stackTrace- 這是與此 Throwable 關聯的堆棧跟蹤元素。
返回值
此方法不返回任何值。
異常
NullPointerException− 如果 stackTrace 為空,或者 stackTrace 的任何元素為空
示例
下麵的例子展示了 java.lang.Throwable.setStackTrace() 方法的用法。
package com.tutorialspoint;
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",10)
};
// sets the stack trace elements
t.setStackTrace(trace);
throw t;
}
}
讓我們編譯並運行上麵的程序,這將產生以下結果 -
ClassName.methodName(fileName:10)
相關用法
- Java Java.lang.Throwable.fillInStackTrace()用法及代碼示例
- Java Java.lang.Throwable.printStackTrace()用法及代碼示例
- Java Java.lang.Throwable.getMessage()用法及代碼示例
- Java Java.lang.Throwable.getCause()用法及代碼示例
- Java Java.lang.Throwable.getStackTrace()用法及代碼示例
- Java Java.lang.Throwable.toString()用法及代碼示例
- Java Java.lang.Throwable.initCause()用法及代碼示例
- Java Java.lang.Thread.run()用法及代碼示例
- Java Java.lang.Thread.isDaemon()用法及代碼示例
- Java Java.lang.ThreadGroup.uncaughtException()用法及代碼示例
- Java Java.lang.Thread.checkAccess()用法及代碼示例
- Java Java.lang.Thread.getState()用法及代碼示例
- Java Java.lang.Thread.yield()用法及代碼示例
- Java Java.lang.ThreadGroup.parentOf()用法及代碼示例
- Java Java.lang.Thread.isInterrupted()用法及代碼示例
- Java Java.lang.Thread.getName()用法及代碼示例
- Java Java.lang.ThreadGroup.getName()用法及代碼示例
- Java Java.lang.ThreadLocal.remove()用法及代碼示例
- Java Java.lang.Thread.enumerate()用法及代碼示例
- Java Java.lang.Thread.getPriority()用法及代碼示例
注:本文由純淨天空篩選整理自 Java.lang.Throwable.setStackTrace() Method。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。