博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Java异常
阅读量:6366 次
发布时间:2019-06-23

本文共 745 字,大约阅读时间需要 2 分钟。

1. 简介

异常类继承图

Java的错误类(
Error)和异常类(
Exception)都是
Throwable的子类,基本由这两大类展开的。

Error

Error这个类通常指的是系统级的错误,如OutOfMemoryError(内存溢出)、StackOverflowError(栈溢出)这些错误,当出现这些错误时基本是系统问题,基本不能通过捕获去恢复,所以不要求捕获或声明。此时可以由它抛出异常然后记录下来,事后分析。

Exception

Exception其实也分为两类异常

不受检查异常(RuntimeException)

不受检查异常即是RuntimeExceptionRuntimeException的子类,如NullPointerException(空指针异常)、ArrayIndexOutOfBoundsException(数组下标越界异常)、IllegalArgumentException(非法参数异常)。这类异常不要求try catch捕获或throws声明抛出,因为出现此类异常通常是由于代码问题,如果任由程序运行下去可能会出现意想不到后果,所以不应该捕获处理试图恢复。

受检查异常

受检查异常即除了RuntimeExceptionException类和Exception下的子类,如InterruptedExceptionIOException。出现此类异常必须在编译前捕获或声明抛出,否则编译不通过。此类异常通常是可以捕获并有效处理所以不能忽略。

2. 注意

  1. 只针对异常的情况使用异常机制,不应该将他们用于正常的控制流
  2. 对可恢复的情况使用受检查异常,对编程错误使用运行时异常
  3. 避免不必要地使用受检查异常
  4. 优先使用标准的异常(JDK中的异常)
  5. 不要忽略异常

转载地址:http://pnrma.baihongyu.com/

你可能感兴趣的文章
day5-iptables
查看>>
版本配置
查看>>
python之进程
查看>>
wpf中嵌入winform控件的坑
查看>>
VMware Workstation and Hyper-V are not compatible. 解决方案
查看>>
POJ-3304Segments[计算几何]
查看>>
杭电2120--Ice_cream's world I(并查集)
查看>>
雅虎前段优化35条
查看>>
(转)接口100
查看>>
UIScrollView 大概是如何实现的,它是如何捕捉、响应手势的?
查看>>
asp.net MVC中实现调取web api
查看>>
keepalived实现服务高可用
查看>>
iOS模型以及使用
查看>>
NSString 去除空格
查看>>
swift - 网络请求数据处理 - 协议处理
查看>>
[BZOJ1588]营业额统计(Splay)
查看>>
[BZOJ 4869][SHOI&SXOI2017]相逢是问候(扩展欧拉定理+线段树)
查看>>
2017-08-13
查看>>
条件语句优化面面观
查看>>
集成友盟微信登录没有回调
查看>>