try {
throw new SomeException();
}
catch (SomeException e) {
System.out.println("reached once");
throw e;
}
catch (Exception e) {
System.out.println("reached twice");
}
即使在第一個catch子句中再次拋出異常,此代碼也只顯示「達到一次」。爲了執行這兩個catch子句,如何解決這個問題?如何捕獲拋出catch子句中的異常?
PS:上面的代碼是我的一個普遍問題,我不得不將它應用到一個更大的代碼中,它帶有大約5個或6個catch子句,它們捕獲不同的異常,但最後,在某個點循環我需要再次拋出異常。
包裝這個'嘗試,catch'在_another_'嘗試,catch'。 –
不要這樣做。數十年來,「登錄並投擲」已被確定爲反模式。 – EJP