一、为什么要使用异常机制
我们在代码的编写过程中并不能预计到所有的特殊情况,如果因为某些特殊情况代码在运行的过程中发生了中断,会造成不可估量的损失,所以我们需要有一种机制来处理这种应急情况,保证其他的代码能够正常的运行。异常处理的机制可以在一段代码发生异常导致程序中断的时候跳过这段程序执行之后的程序,我们这样就可以将可能会发生异常的代码放到try--catch的结构之中来避免这种极端的情况,还能够通过不同的异常类型来采取不同的异常处理手段。
二、异常机制的介绍
代码发生异常大致可以分为语法正确和语法错误2种情况,当语法错误的时候编译器会直接报错,此时代码是无法开始运行的。当你的语法正确时可能会出现异常的代码是可以编译通过的,但如果你输入的数据是非法可能直接导致程序的终止运行。
常见异常的分类:
ParseException | 解析错误 |
NullPointException | 空指针错误 |
ArithmeticException | 计算错误 |
IOException | 输入输出错误 |
三、异常机制的使用
package demo;
public class main {
public static void main(String[] args) {
try {
int a = 1;//可能出现异常的代码段
int b = 0;
int c = a/b;
} catch (ArithmeticException e1) { //异常分支的不同处理
System.out.println("计算错误");
}catch (NullPointerException e1) {
System.out.println("空指针错误");
}finally{
System.out.println("一定会执行的语句!");
}
}
}
finally是一个一定会执行的分支,即使之前的处理异常的分支中有return语句,finally中的语句仍然会执行。