JAVA异常之运行时异常和非运行时异常

来源:互联网 发布:研究生三年规划 知乎 编辑:程序博客网 时间:2024/06/08 10:01

运行时异常RuntimeException

个人理解就是:当我们的代码没有进行异常处理的时候,一旦出现了运行时异常,系统会把异常一直往上层抛,一直会到最上层,就会出现程序终止。
常见的运行时异常:

  1. NullPointerException - 空指针引用异常 。
  2. ClassCastException - 类型强制转换异常。
  3. IllegalArgumentException - 传递非法参数异常。
  4. ArithmeticException - 算术运算异常。
  5. ArrayStoreException - 向数组中存放与声明类型不兼容对象异常 。
  6. IndexOutOfBoundsException -下标越界异常
  7. NegativeArraySizeException - 创建一个大小为负数的数组错误异常
  8. NumberFormatException - 数字格式异常
  9. SecurityException - 安全异常
  10. UnsupportedOperationException - 不支持的操作异常

注意:①运行时异常往往都是逻辑上出的问题,我们应该尽量通过程序的逻辑方面去避免。
②如果不想终止,则必须捕获所有的运行时异常,决不让这个处理线程退出。队列里面出现异常数据了,正常的处理应该是把异常数据舍弃,然后记录日志。不应该由于异常数据而影响下面对正常数据的处理。

非运行时异常
非运行时异常是RuntimeException以外的异常,类型上都属于Exception类及其子类。如IOException、SQLException等以及用户自定义的Exception异常。对于这种异常,我们只能通过catch进行处理,所以,面对这种异常不管我们是否愿意,只能自己去写一大堆catch块去处理可能的异常。

阅读全文
1 0
原创粉丝点击