2023年11月29日发(作者:)

java异常的产⽣和传递过程_深⼊理解Java异常处理机制

⼀、引⼦

try…catch…finally恐怕是⼤家再熟悉不过的语句了,⽽且感觉⽤起来也是很简单,逻辑上似乎也是很容易理解。不过,我亲⾃体验的“教

训”告诉我,这个东西可不是想象中的那么简单、听话。不信?那你看看下⾯的代码,“猜猜”它执⾏后的结果会是什么?不要往后看答

案、也不许执⾏代码看真正答案哦。如果你的答案是正确,那么这篇⽂章你就不⽤浪费时间看啦。

1 package exception;

2

30 }

64 ();

在 Java 中,所有的异常都有⼀个共同的祖先 Throwable(可抛出)。Throwable 指定代码中可⽤异常传播机制通过 Java 应⽤程序传输的任

在 Java 应⽤程序中,异常处理机制为:抛出异常,捕捉异常。

1 /**

9 } catch (ArithmeticException e) {

9 n("intArray[" + i + "] = " + intArray[i]);

6 // 捕获并处理try抛出的异常类型Type2

2、catch 块:⽤于处理try捕获到的异常。

任何Java代码都可以抛出异常,如:⾃⼰编写的代码、来⾃Java开发环境包中代码,或者Java运⾏时系统。⽆论是谁,都可以通过Java的

使⽤throws关键字将异常抛给调⽤者后,如果调⽤者不想处理该异常,可以继续向上抛出,但最终要有能够处理该异常的调⽤者。pop⽅法

24 }

4 * @author zsh

38 public String getMessage() { // 覆盖getMessage()⽅法

算术条件异常。譬如:整数除零等。

3、如果在当前抛出异常的⽅法中处理异常,可以使⽤try-catch语句捕获并处理;否则在⽅法的声明处通过throws关键字指明要抛出给⽅