描述
这个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。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。