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 基础 ------- 异常的主要内容,如果未能解决你的问题,请参考以下文章