一.使用try…catch捕获异常
Java异常处理机制为:抛出异常,捕捉异常,处理异常。
try…catch语法格式
在使用try…catch捕获处理异常时需要注意:
- 不要过度使用异常,不能使用异常处理机制来代替正常的流程控制语句
- 异常捕获时,一定要先捕获小异常,再捕获大异常。否则小异常将无法被捕获
- 避免出现庞大的try块
- 避免使用catch(Exception e){}
- 不要忽略异常
- 在这里插入图片描述
二.Java异常体系(错误和异常)
Java把所有的非正常情况分成两种:异常(Exception)和错误(Error),它们都继承Throwable父类。
Error错误,一般是指与虚拟机相关的问题,如系统崩溃、虚拟机错误、动态链接失败等,这种错误无法恢复或不可能捕获,将导致应用程序中断。通常应用程序无法处理这些错误,因此应用程序不应该试图使用catch块来捕获Error对象。在定义该方法时,也无须在其throws子句中声明该方法可能抛出Error及其任何子类。
异常(Exception)
从Java7开始,一个catch块可以捕获多种类型的异常。
在使用一个catch块捕获多种类型的异常时需要注意:捕获多种类型的异常时,多种异常类型之间用竖线(|)隔开。捕获多种类型的异常时,异常变量有隐式的final修饰,因此程序不能对异常变量重