Java中throw和throws介绍

https://blog.****.net/tanga842428/article/details/52751365

https://blog.****.net/michaelgo/article/details/82790253

https://blog.****.net/swift2010/article/details/78944221

Java中throw和throws介绍

异常处理机制

异常处理是对可能出现的异常进行处理,以防止程序遇到异常时被卡死,处于一直等待,或死循环。

异常有两个过程,一个是抛出异常;一个是捕捉异常。

抛出异常

抛出异常有三种形式,一是throw,一个throws,还有一种系统自动抛异常。

throw与throws的比较

Java中throw和throws介绍

Java中throw和throws介绍

1、throws出现在方法函数头;而throw出现在函数体。

2、throws表示出现异常的一种可能性,并不一定会发生这些异常;throw则是抛出了异常,执行throw则一定抛出了某种异常对象。

3、两者都是消极处理异常的方式(这里的消极并不是说这种方式不好),只是抛出或者可能抛出异常,但是不会由函数去处理异常,真正的处理异常由函数的上层调用处理。

好的编程习惯:

1.在写程序时,对可能会出现异常的部分通常要用try{...}catch{...}去捕捉它并对它进行处理;

2.用try{...}catch{...}捕捉了异常之后一定要对在catch{...}中对其进行处理,那怕是最简单的一句输出语句,或栈输出e.printStackTrace();

3.如果是捕捉IO输入输出流中的异常,一定要在try{...}catch{...}后加finally{...}把输入输出流关闭;

4.如果在函数体内用throw抛出了某种异常,最好要在函数名中加throws抛异常声明,然后交给调用它的上层函数进行处理。

捕捉异常