异常的处理原则:
1,处理方式有两种:try 或者 throws
2,调用到抛出异常的功能时,抛出几个,就处理几个
一个try可以对应多个catch
3,当有多个catch时,捕捉父类异常的catch要放到最下面
4,在catch块内,需要定义针对性的处理方式,不要简单的定义 printStackTrace 输出语句,也不要不写
当捕获到的异常在本方法内处理不了时,可以继续在catch块中抛出
try {
throw new AException();
}
catch (AException e) {
// 向外抛出,不进行处理
throw e;
}
如果该异常处理不了,但并不属于该功能出现的异常,可以将异常转换后,再抛出和该功能相关的异常
try {
throw new AException();
}
catch (AException e) {
// 对AException进行转换后抛出
throw new BException();
}
如果异常可以处理,在处理后还需要将异常产生的和本功能相关的问题提供出去,
让调用者知道并处理,具体方式为,捕获异常并处理后,再转换为新的异常并抛出
try {
throw new AException();
}
catch (AException e) {
// 对AException处理。。。
// 对AException进行转换后抛出
throw new BException();
}