在OOP思想中,java中的异常概念也被设计成一个类,即java.lang包下面的Exception类。
当程序出现异常时,我们可以在代码中得到一个Exception对象。Java具有代码级的强制性异常检测机制,即许多常见的可预见的异常都必须编写代码处理,否则就无法编译通过。在Eclipse中,将会提示我们代码语法错误“Unhandled exception type IOException”,即这行代码可能会抛出IOException。
try catch处理机制
如果一段代码可能会抛出异常,就需要将这些代码放在try catch块中,try指“尝试”执行可能出现异常的代码,如果成功,则忽略备用方案,即(B)区的代码;但如果失败,代码会catch(捕获)到一个异常对象,放弃(A)计划,开始执行(B)计划。
try{
可能抛出异常的代码...
//如果没有问题出现,执行下面的代码
(A)其它计算代码...
}catch(Exception ef){
//如果出现异常后执行的代码
(B)出了异常情况的计算代码...
}
我们也可以在定义方法时使用throws关键字声明方法可能会抛出异常;当另一个方法调用了一个声明为可能抛出异常的方法时,要么将调用这个方法的代码放入try catch块中;要么将调用方法也声明为抛出异常。另外,在方法体中,可以new一个Exception对象抛出,即自定义异常。