异常处理机制

一、异常的处理:抓抛模型。

"":程序在正常执行的过程中,一旦出现异常,就会在异常代码中生成一个对应异常类的对象。并将此对象抛出,一旦抛出对象以后,其后的代码就不在执行。

"":可以理解为异常的处理方式:1try-catch-finally 2、throws

 

二、try-catch-finally的使用。

try {
            //可能出现异常的代码
        }catch (异常类型1){
            //对异常进行的处理1
        }catch (异常类型2){
            //对异常进行的处理2
        }finally {
            //一定会执行的代码
        }

对于以上格式,无论是否发生异常(除特殊情况外),finally 语句块中的代码都会被执行。此外,finally 语句也可以和 try 语句匹配使用,其语法格式如下:

try {
    // 逻辑代码块
} finally {
    //一定会执行的代码
 }

使用 try-catch-finally 语句时需注意以下几点:

1、异常处理语法结构中只有 try 块是必需的,也就是说,如果没有 try 块,则不能有后面的 catch 块和 finally 块;
2catch 块和 finally 块都是可选的,但 catch 块和 finally 块至少出现其中之一,也可以同时出现;
3、可以有多个 catch 块,捕获父类异常的 catch 块必须位于捕获子类异常的后面;
4、不能只有 try 块,既没有 catch 块,也没有 finally 块;
5、多个 catch 块必须位于 try 块之后,finally 块必须位于所有的 catch 块之后。
6finallytry 语句块匹配的语法格式,此种情况会导致异常丢失,所以不常见。

 

三、throws。

定义一个方法的时候可以使用throws关键字声明。使用throws关键字声明的方法表示此方法不处理异常,而交给方法调用处进行处理。

throws关键字格式:

public 返回值类型 方法名称(参数列表,,,)throws 异常类{};

 4、自定义异常抛出(throw)。

如果需要在程序中自行抛出异常,则应使用 throw 语句,throw 语句可以单独使用,throw 语句抛出的不是异常类,而是一个异常实例,而且每次只能抛出一个异常实例。

 

posted @ 2022-12-17 06:06  Amireux-126  阅读(18)  评论(0)    收藏  举报