在Java 7 multicatch塊如下列:在Java 7 multicatch塊中捕獲異常的類型是什麼?
try {
// code that throws exception
} catch (CharacterCodingException | UnknownServiceException ex) {
// handle exception
}
是什麼ex
的編譯時類型?它是兩個異常類型共同的派生類嗎?在這個例子中,這將是一個IOException
。
它將使意義來取其拋出,但是你可以很容易地通過打印'ex.getClass檢查()' – Jon
如果您需要有不同的行爲基於捕獲到的異常情況,那麼你不應該使用multicatch塊 - 將它分成多個catch塊。 –
@Jon:「Type」是一個編譯時的概念,你在談論對象的運行時類。 – ColinD