Java中的异常链
newExc.initCause(e); 什么意思?
newExc.initCause(e); 什么意思?
2018-12-13
public Throwable initCause(Throwable cause)
将此 throwable 的 cause 初始化为指定值。(该 Cause 是导致抛出此 throwable 的throwable。)
此方法至多可以调用一次。此方法通常从构造方法中调用,或者在创建 throwable 后立即调用。如果此 throwable 通过 Throwable(Throwable)
或 Throwable(String,Throwable)
创建,此方法甚至一次也不能调用。
参数:
cause
- 原因(保存此 cause,以便以后通过 getCause()
方法检索它)。(允许 null 值,指出 cause 是不存在的或是未知的。)
返回:
对此 Throwable
实例的引用。
抛出:
IllegalArgumentException
- 如果 cause
是此 throwable。(throwable 不能是它自己的 cause。)
IllegalStateException
- 如果此 throwable 通过 Throwable(Throwable)
或 Throwable(String,Throwable)
创建,或者此方法已经在此 throwable 上进行调用。
从以下版本开始:
1.4
举报