Java Throwable initCause()方法
java.lang.Throwable.initCause() 方法初始化该throwable为指定值的原因。 (原因是导致此抛出得到抛出的对象。)
它一般被调用在构造函数中,或者创建抛出后。
1 语法
public Throwable initCause(Throwable cause)
2 参数
cause : 这个是原因(保存为通过getCause()方法之后的检索)。 (一允许null值,指出原因是不存在的或未知的。
3 返回值
该方法返回一个引用该Throwable实例。
4 示例
package com.yiidian;
/**
* 一点教程网: http://www.yiidian.com
*/
/**
* Java Throwable initCause()方法
*/
import java.lang.*;
public class ThrowableDemo {
public static void main(String[] args) throws Throwable {
try {
Exception1();
}
catch(Exception e) {
System.out.println(e);
}
}
public static void Exception1()throws amitException{
try {
Exception2();
}
catch(otherException e) {
amitException a1 = new amitException();
// initializes the cause of this throwable to the specified value.
a1.initCause(e);
throw a1;
}
}
public static void Exception2() throws otherException {
throw new otherException();
}
}
class amitException extends Throwable {
amitException() {
super("This is my Exception....");
}
}
class otherException extends Throwable {
otherException(){
super("This is any other Exception....");
}
}
输出结果为:
Exception in thread "main" amitException: This is my Exception....
at ThrowableDemo.Exception1(ThrowableDemo.java:18)
at ThrowableDemo.main(ThrowableDemo.java:6)
Caused by: otherException: This is any other Exception....
at ThrowableDemo.Exception2(ThrowableDemo.java:27)
at ThrowableDemo.Exception1(ThrowableDemo.java:15)
... 1 more
热门文章
优秀文章