Java中的try,catch,throw,throws,finally与异常类
程序员文章站
2022-03-07 22:40:07
...
以一个数组的索引越界抛出异常并处理它为例
package Demo3;
import java.io.IOException;
public class throwDemo1 {
public static void main(String[] args) {
try {//可能发生异常的代码块
int[] arr = {2, 3, 4, 5};
int index = 4;
int element = getElement(arr, index);
System.out.println(element);
}catch (ArrayIndexOutOfBoundsException e){//捕捉异常并处理,接收了来自代码块中返回的异常,然后执行以下代码块
//e.printStackTrace();
System.out.println("数组越界!");
// System.out.println(e.getMessage());//Index 4 out of bounds for length 4
// System.out.println(e);//java.lang.ArrayIndexOutOfBoundsException: Index 4 out of bounds for length 4
}catch (IOException ioException){
System.out.println("文件读写异常");
}finally {//无论异常是否发生,里面的代码都需要执行
System.out.println("关闭打开的一些物理资源(磁盘文件/网络连接/数据库连接等)");
}
}
private static int getElement(int[] arr, int index) throws ArrayIndexOutOfBoundsException,IOException {//判断该类可能会发生该异常,抛出给上层调用函数捕捉,相当于return异常
if(index<0||index>arr.length){
throw new ArrayIndexOutOfBoundsException("数组索引越界!");//符合该条件一定抛出该异常
}
int element = arr[index];
return element;
}
}
上一篇: ipset黑白名单设置
推荐阅读
-
Java编程中异常处理 try-catch-finally语句的一些分析
-
异常的使用,try-catch-finally的使用,自定义异常,throws和throw的区别
-
Java的异常处理:try-catch-finally throws throw
-
java的异常处理try, catch,throw,throws和finally
-
异常(try……catch……finally、throws和throw的区别、自定义异常)
-
Java 异常、try catch、Thorwable、printStackTrace、throws和throw的区别、自定义异常
-
异常处理(try.catch.finally 与 throw.throws )
-
JAVA异常的处理try...catch,finally,throw,throws
-
详解Java异常处理中throw与throws关键字的用法区别
-
Java编程中异常处理 try-catch-finally语句的一些分析