initCause
2 回答
已采納

大咪
TA貢獻785條經驗 獲得超332個贊
initCause 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
教你一個方法,去網上下載API文檔,當你遇到不懂的方法體是直接去查API,API上寫得非常詳細,當然你要是看不懂的話,可以在問問 。。養成這個好習慣挺重要的。。說重點在簡化一下啊,initCause()的作用你可以理解成是保存原始的異常,當你想要知道底層發生了什么異常的時候調用getCause()就能夠獲得原始異常。說白了就是出了問題的時候如果你的異常用的這個方法處理,通過getCause可以看到更底層的異常代碼,就是這么多的,沒其他什么了..
添加回答
舉報
0/150
提交
取消