Java异常类

异常类作用

是为了完善java程序的健壮性,适当地处理异常有利于程序的正常进行。

异常在java中以类的方式存在,每个异常类都可创建对象,在发生异常jvm会自动new对象,并且将new的对象抛出,打印到控制台。

常见的异常类

  1. NullPointerException 当应用程序试图访问空对象时,则抛出该异常

  1. NumberFormatException当应用程序试图将字符串转换成一种数值类型,但该字符串不能转换为适当格式时,抛出该异常

  1. IndexOutOfBoundsException指示某排序索引(例如对数组、字符串或向量的排序)超出范围时抛出

  1. IndexOutOfBoundsException指示某排序索引(例如对数组、字符串或向量的排序)超出范围时抛出

  1. ClassCastException当试图将对象强制转换为不是实例的子类时,抛出该异常

  1. RuntimeExceptionRuntimeException 是那些可能在Java虚拟机正常运行期间抛出的异常的超类

此外,还可以通过继承Exception类来自定义所需要的异常

异常体系结构

Error:严重问题,通过代码无法处理。比如:内存溢出。

Exception:称为异常类,它表示程序本身可以处理的问题

  • RuntimeException及其子类:运行(编译)时异常。 (空指针异常,数组索引越界异常)

  • 除RuntimeException之外所有的异常:编译期必须处理的,否则程序不能通过编译。

(日期格式化异常,代码格式错误)。

Throwable的成员方法

异常的处理方法

如果程序出现了问题,我们没有做任何处理,最终JVM会做默认处理。

  • 把异常的名称,异常原因及异常出现的位置等信息输出在了控制台

  • 程序停止执行

常用的异常处理方法是:在一条可能发生异常的语句或是代码块外用try{}catch(异常类){}包裹

如果在代码书写的时候,可能发生错误,这时需要用 throws 将异常抛出

两种处理异常方式的小结

抛出 throw throws

  1. 在方法中,当传递的参数有误,没有继续运行下去的意义了,则采取抛出处理。表示让该方法结束运行。

  1. 告诉调用者出现了问题。

捕获 try…catch

能让代码继续往下运行。

下面例举一个简单的例子:

自定义异常:MyException

要求:输入年龄在18-25,否则报异常或抛出

注:这里的catch只有当输入的不是int型才会执行里面的代码

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值