Java 基础 ------- 异常

Posted 随风而逝.

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java 基础 ------- 异常相关的知识,希望对你有一定的参考价值。

异常:程序在运行过程中所发生的不正常事件,如文件找不到,网络连接不同或中断,下标越界,类型转换异常等。

使用if-else 处理异常缺点:
a、代码臃肿,加入了大量的异常情况判断和处理代码

b、大量精力放在了异常处理,占用了编码时间,影响开发效率

c、很难穷举所有异常情况,程序不健壮

d、异常处理代码和业务代码交织在一起,影响可读性

1、Java异常体系结构

 

 所有异常的父类 Throwable ,有两个派生子类 Error 类和 Exception类。

1.1、Error 类:表示仅靠程序本身无法恢复的严重错误,如内存溢出,动态链接失败,虚拟机错误。应用程序遇到这种类型,应尽量使程序安全退出。

1.2、Exeception类:表示由java 应用程序抛出和处理的严重错误,如所需文件找不到,数组下标越界,类型转换异常,网络连接不通或中断等异常。又分为两大类异常运行时异常和非运行时异常。

运行时异常: 包括RunningException及其所有子类。不要求程序必须对他们进行处理,主要处理的就是这种异常。

Checked异常(非运行时异常):除了运行时异常外的其他从Exception类继承来的异常类。

 

 常见的有:

运行时异常(RuntimeException):
  NullPropagation:空指针异常;
  ClassCastException:类型强制转换异常
  IllegalArgumentException:传递非法参数异常
  IndexOutOfBoundsException:下标越界异常
  NumberFormatException:数字格式异常

非运行时异常:
  ClassNotFoundException:找不到指定 class 的异常
  IOException:IO 操作异常

错误(Error):
  NoClassDefFoundError:找不到 class 定义异常
  StackOverflowError:深递归导致栈被耗尽而抛出的异常
  OutOfMemoryError:内存溢出异常

 

 

以上是关于Java 基础 ------- 异常的主要内容,如果未能解决你的问题,请参考以下文章

Java基础(十五):异常处理

java基础面试题整理2-异常

3.3 java基础总结①异常②自定义异常

Java基础语法—— 认识异常

[ 转载 ] Java基础15--异常基础 Exception

Java基础面试题有哪些?