多个捕捉区块
视频锁定
{$ currentTime | date:'mm:ss' $}
{$ timeLeft | date:'mm:ss' $}
一个try
代码块后面跟随多个catch
代码块的情况就叫多重捕获。多重捕获块的语法如下所示:
try {
// 程序代码
} catch(异常类型1 异常的变量名1) {
// 程序代码
} catch(异常类型2 异常的变量名2) {
// 程序代码
} catch(异常类型3 异常的变量名3) {
// 程序代码
}
上面的代码段包含了3个catch块。你可以在try语句后面添加任意数量的catch块。如果保护代码中发生异常,异常被抛给第一个catch块。如果抛出异常的数据类型与异常类型1匹配,它在这里就会被捕获。如果不匹配,它会被传递给第二个catch块。依此类推,直到异常被捕获或者通过所有的catch块。
该示例展示了如何使用多重try/catch。
try {
file = new FileInputStream(fileName);
x = (byte) file.read();
} catch(IOException i) {
i.printStackTrace();
} catch(FileNotFoundException f) {
f.printStackTrace();
}
在线练习
{$ activeFileHint $}