1、java里的异常的分类.
xxxxxx ArithmeticException
2、捕捉多个exception
在Java SE 7中,你可以使用单个catch语句块处理一种或多种类型的异常,并以改进的异常类型检查方式来重新抛出异常。 我们先来看一段代码:
catch (IOException ex) {
logger.log(ex);
throw ex;
catch (SQLException ex) {
logger.log(ex);
throw ex;
}
在Java SE 7发布之前,由于变量ex存在不同的类型,因此想要创建一个公共方法来清除重复的代码是非常困难的。不过从Java SE 7版本开始,你可以编写如下代码来去除重复的代码:
catch (IOException|SQLException ex) {
logger.log(ex);
throw ex;
}
注意:如果一个catch语句块处理的异常类型超过1个,那就隐式地表示被catch的参数变量(例如上面的ex)是一个final的变量,你不能在catch语句块内对其重新赋值。 使用单个catch语句块处理多种异常类型比使用多个catch语句块,每个语句块只处理一种类型的异常所编译生成的字节码更小,因此也更好。一个处理多个异常类型的catch语句块在被Java编译器编译时并不会生成重复的字节码,字节码中也没有重复的异常处理程序。