💎一站式轻松地调用各大LLM模型接口,支持GPT4、智谱、星火、月之暗面及文生图 广告
Java异常是一个描述在代码段中发生的异常(也就是出错)情况的对象。当异常情况发生,一个代表该异常的对象被创建并且在导致该错误的方法中被抛出(throw)。该方法可以选择自己处理异常或传递该异常。两种情况下,该异常被捕获(caught)并处理。异常可能是由Java运行时系统产生,或者是由你的手工代码产生。被Java抛出的异常与违反语言规范或超出Java执行环境限制的基本错误有关。手工编码产生的异常基本上用于报告方法调用程序的出错状况。 <br> <br> Java异常处理通过5个关键字控制:try、catch、throw、throws和 finally。下面讲述它们如何工作的。程序声明了你想要的异常监控包含在一个try块中。如果在try块中发生异常,它被抛出。你的代码可以捕捉这个异常(用catch)并且用某种合理的方法处理该异常。系统产生的异常被Java运行时系统自动抛出。手动抛出一个异常,用关键字throw。任何被抛出方法的异常都必须通过throws子句定义。任何在方法返回前绝对被执行的代码被放置在finally块中。 <br> ## **图解** :-: ![](https://img.kancloud.cn/56/36/5636435ea1af04a35fc68b04889274fd_1207x561.png) 下面是一个异常处理块的通常形式: ``` try {     // block of code to monitor for errors } catch (ExceptionType1 exOb) {     // exception handler for ExceptionType1 } catch (ExceptionType2 exOb) {     // exception handler for ExceptionType2 } // ... finally {     // block of code to be executed before try block ends } ``` **这里,ExceptionType 是发生异常的类型。下面将介绍怎样应用这个框架。** ## 捕获异常 使用 try 和 catch 关键字可以捕获异常。try/catch 代码块放在异常可能发生的地方。 try/catch代码块中的代码称为保护代码,使用 try/catch 的语法如下: ~~~ try { // 程序代码 }catch(ExceptionName e1) { //Catch 块 } ~~~ Catch 语句包含要捕获异常类型的声明。当保护代码块中发生一个异常时,try 后面的 catch 块就会被检查。 如果发生的异常包含在 catch 块中,异常会被传递到该 catch 块,这和传递一个参数到方法是一样。