动力节点首页 全国咨询热线:400-8080-105

绑定手机号,登录
手机号

验证码

微信登录
手机号登录
手机号

验证码

微信登录与注册
微信扫码登录与注册

扫码关注微信公众号完成登录与注册
手机号登录
首页 > 文章

浅谈Java中的异常

05-18 09:43 796浏览
举报 T字号
  • 大字
  • 中字
  • 小字

说到异常,大家脑海中第一反应肯定是try-catch-finally这样的固定的组合。的确,这是Java异常处理的基本范式,在Java等面向对象的编程语言中异常属于对象。我们所理解的Java异常实际上就是Java程序在运行过程中发生由于外部问题(如硬件错误、输入错误)等导致的程序异常事件。

异常时什么?就是指阻止当前方法或作用域继续执行的问题,当程序运行时出现异常时,系统就会自动生成一个Exception对象来通知程序进行相应的处理。Java异常的类型有很多种,下面我们就使用一张图来看一下Java异常的继承层次结构:

 

图片中我们看到Java异常的基类是Throwable类型,然后它有两个派生类Error和Exception类型,然后Exception类有分为受检查异常及RuntimeException(运行时异常)。下面我们就来逐一介绍。

1.Java异常中的Error

Error一般表示编译时或者系统错误,例如:虚拟机相关的错误,系统崩溃(例如:我们开发中有时会遇到的OutOfMemoryError)等。这种错误无法恢复或不可捕获,将导致应用程序中断,通常应用程序无法处理这些错误,因此也不应该试图用catch来进行捕获。

2.Java异常中的Exception

上面我们有介绍,Java异常的中的Exception分为受检查异常和运行时异常(不受检查异常)。下面我们展开介绍。

1)Java中的受检查异常

相信大家在写IO操作的代码的时候,一定有过这样的记忆,对File或者Stream进行操作的时候一定需要使用try-catch包起来,否则编译会失败,这是因为这些异常类型是受检查的异常类型。编译器在编译时,对于受检异常必须进行try...catch或throws处理,否则无法通过编译。常见的受检查异常包括:IO操作、ClassNotFoundException、线程操作等。

2)Java中的非受检查异常(运行时异常)

RuntimeException及其子类都统称为非受检查异常,例如:NullPointExecrption、NumberFormatException(字符串转换为数字)、ArrayIndexOutOfBoundsException(数组越界)、ClassCastException(类型转换错误)、ArithmeticException(算术错误)等。

以上就是Java异常的简单归类,当然我们从Java异常的继承层次结构不难发现,Java异常其实细分的话还有很多的种类,这里我们就不过多赘述了,想了解详细情况的小伙伴可以去动力节点在线观看在线视频课程免费学习Java异常的全部知识。

0人推荐
共同学习,写下你的评论
0条评论
代码小兵696
程序员代码小兵696

118篇文章贡献392976字

相关课程 更多>

作者相关文章更多>

推荐相关文章更多>

Java面试题及答案整理

提枪策马乘胜追击04-21 20:01

Spring常见面试题

代码小兵92504-17 16:07

Java零基础实战项目——五子棋

代码小兵98804-25 13:57

Java string类详解

杨晶珍05-11 14:54

6道经典算法面试题

杨晶珍05-12 16:39

发评论

举报

0/150

取消