10.2 异常处理机制 10.2.1 使用try-catch捕获异常

10.2 异常处理机制

Java的异常处理机制可以让程序具有极好的容错性,让程序更加健壮。当程序运行出现意外情形时,系统会自动生成一个Exception对象来通知程序,从而实现将”业务功能实现代码”和”错误处理代码”分离,提供更好的可读性。

10.2.1 使用try…catch捕获异常

下面是Java异常处理机制的语法结构:

1
2
3
4
5
6
7
8
9
10
try
{
//业务实现代码
...
}
catch (Exception e)
{
//错误处理代码
...
}

抛出异常的过程

如果执行try块里的业务逻辑代码时出现异常,系统自动生成一个异常对象,该异常对象被提交给**Java运行时环境**,这个过程被称为抛出(throw)异常。

捕获异常的过程

Java运行时环境收到异常对象时,会寻找能处理该异常对象的catch块,
如果找到合适的catch块,则把该异常对象交给该catch块处理,这个过程被称为捕获(catch)异常;
如果Java运行时环境找不到捕获异常的catch块,则运行时环境终止,Java程序也将退出。

出现异常时没有处理该异常的catch块时程序直接退出

不管程序代码块是否处于try块中,甚至包括catch块中的代码,只要执行该代码块时出现了异常,系统总会自动生成一个异常对象。如果程序没有为这段代码定义任何的catch块,则Java运行时环境无法找到处理该异常的catch块,程序就在此退出。