运行时异常、非运行时异常、错误

异常的层次结构

在这里插入图片描述

Throwable有两个子类,error和exception。

Error(错误)

是程序无法处理的错误,表示运行应用程序中较严重的问题。大多数错误与代码编写者的操作无关,而是代码运行时JVM(Java虚拟机)出现的问题。

Exception(异常)

是程序本身可以处理的异常。

运行时异常与非运行时异常的区别
运行时异常runtimeException,这些异常时不检查异常,程序中可以选择捕获这些异常处理,也可以选择不捕获处理,这些异常一般是由程序逻辑错误引起的,程序应该从逻辑角度尽量避免此类异常的发生。出现运行时异常后,如果没有捕获处理此异常,系统会把异常一层层往上抛,一直到最上层,如果是多线程,就由Thread.run()方法抛出;如果是单线程就由main()方法抛出。抛出之后如果输线程,则线程也就退出了,
非运行时异常
运行时异常以外的所有异常,如IOException和SQLException,以及用户自己定义的一些异常,这种异常编译器强制要求我们对其进行处理,要么捕获,要么抛出,否则程序就不能编译通过。

常见的runtimeException

NullPointerException–空指针异常
ClassCastException–类型转换异常
ArrayIndexOutOfBoundsException–数组下标越界
ClassNotFoundException–找不到指定的类
NumberFormatException–数字格式异常
SQLException–SQL语句执行异常
IOException–文件未找到,未打开或者io操作不能进行的异常
Exception–
Exception–

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

wmf_helloWorld

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值