处有未经处理的异常_java异常处理

通常抛出异常后,还需要将异常捕获。使用try和catch语句块来捕获异常,有时候还会用到finally。

对于上述三个关键词所构成的语句块,try语句块是必不可少的,catch和finally语句块可以根据情况选择其一或者全选。你可以把可能发生错误或出现问题的语句放到try语句块中,将异常发生后要执行的语句放到catch语句块中,而finally语句块里面放置的语句,不管异常是否发生,它们都会被执行。

自定义一个异常类非常简单,只需要让它继承 Exception 或其子类就行。在自定义异常类的时候,建议同时提供无参构造方法和带字符串参数的构造方法,后者可以为你在调试时提供更加详细的信息。

百闻不如一见,下面我们尝试自定义一个算术异常类。

在/home/project/目录下创建一个MyAriException类。

主要的代码如下:

// MyAriException.javapublic class MyAriException extends ArithmeticException { //自定义异常类,该类继承自ArithmeticException public MyAriException() { } //实现默认的无参构造方法 public MyAriException(String msg) { super(msg); } //实现可以自定义输出信息的构造方法,将待输出信息作为参数传入即可}添加一个ExceptionTest类作为测试用,在该类的main()方法中,可以尝试使用throw抛出自定义的异常。

代码片段如下:

// ExceptionTest.javaimport java.util.Arrays;public class ExceptionTest { public static void main(String[] args) { int[] array = new int[5]; //声明一个长度为5的数组 Arrays.fill(array, 5); //将数组中的所有元素赋值为5 for (int i = 4; i > -1; i--) { //使用for循环逆序遍历整个数组,i每次递减 if (i == 0) { // 如果i除以了0,就使用带异常信息的构造方法抛出异常 throw new MyAriException("There is an exception occured."); } System.out.println("array[" + i + "] / " + i + " = " + array[i] / i); // 如果i没有除以0,就输出此结果 } }}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值