详解 Exception 和 Error

我们在日常开发过程中,如何处理好异常是比较考验功底的,我个人觉得对于异常需要掌握两个方面即可。
1:第一,理解 Throwable、Exception、Error 的设计和分类。掌握一些常用的异常如 :
NullPointerException 空指针引用异常,
ClassCastException 类型强制转换异常,
IndexOutOfBoundsException 下标越界异常
这里不做太多列举最好能掌握五个以上其他了解即可以及要懂的自定义异常。
2:第二,理解 Java 语言中操作 Throwable 的元素和实践。 掌握最基本的异常处理,
如 try-catch-finally 块,throw、throws 关键字等。与此同时,也要懂得如何处理特殊的业务场景。

3:知道我们掌握的内容后我们来介绍一下java的异常体系如图:
在这里插入图片描述
Exception 和 Error 都是继承了 Throwable 类,在 Java 中只有 Throwable 类的实例才可以被抛出(throw)或者捕获(try-catch),它是异常处理机制的基本组成类型。
分别介绍一下Exception和Error:
Error 是指在正常情况下,不大可能出现的情况,绝大部分的 Error 都会导致程序(比如 JVM 自身)处于非正常的、不可恢复状态。
既然是非正常情况,所以不便于也不需要捕获,常见的比如 OutOfMemoryError(注:这是一道面试考点 ,在jvm内存中除了程序计算器不会现内存溢出其他如栈,本地方法栈这些都会出现内存溢出的情况,更详细的大家可以看一下jvm内存划分) 类,都是 Error 的子类。
Exception 又分为运行时异常(不可检测异常)和非运行时异常(可检测异常),非运行时异常在代码里要求我们必须显式地进行捕获处理,这是java强制规定的不然编译通不过。
运行时异常如我们上面举例的都是运行时异常,java并不会在编译期强制要求我们来处理,通常我们可以结合逻辑预判在结合编码来避免运行时异常发生。具体根据需要来判断是否需要捕获。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值