Java异常处理机制(一)之throw和throws的区别和语法

发布时间 2023-11-13 16:58:49作者: 小亮又飘了

一,概述

1.throw是语句抛出一个异常,一般是在代码块的内部,当程序出现某种逻辑错误时由程序员主动抛出某种特定类型的异常

2.throws是声明一个异常,写在方法函数头

3.当某个方法可能会抛出某种异常时用于throws 声明可能抛出的异常,然后交给上层调用它的方法程序处理

4.throws出现在方法函数头;而throw出现在函数体.throws表示出现异常的一种可能性,并不一定会发生这些异常; throw则是抛出了异常,执行throw则一定抛出了某种异常对象。两者都是消极处理异常的方式(这里的消极并不是说这种方式不好),只是抛出或者可能抛出异常,但是不会由函数去处理异常,真正的处理异常由函数的上层调用处理。

5.如果try块中抛出了一个在catch子句中说明的异常类,throw后面的语句无法执行,如果写了语句,是无法通过编译的。

6.无论是否抛出异常finally语句块最终都会执行

二,语法

throw和throws的基本语法