Java基础:执行时异常和非执行时异常
1.Java异常机制
Java把异常当做对象来处理,并定义一个基类java.lang.Throwable作为全部异常的超类。
Java中的异常分为两大类:错误Error和异常Exception。Java异常体系结构例如以下图所看到的:
2.Throwable
Throwable类是全部异常或错误的超类,它有两个子类:Error和Exception,分别表示错误和异常。当中异常Exception分为执行时异常(RuntimeException)和非执行时异常,也称之为不检查异常(Unchecked Exception)和检查异常(Checked Exception)。
2.1.Error
通常是指java虚拟机相关的问题,如系统崩溃、虚拟机出错误、动态链接失败等。这样的错误无法恢复或不可能捕获,将导致应用程序中断。通常应用程序无法处理这些错误,因此应用程序不应该捕获Error对象,也无须在其throws子句中声明该方法抛出不论什么Error或其子类。
2.2.Exception
类型1:执行时异常
1、 RuntimeException类及其子类
2、 也称为不检查异常,即编译器不检測,而是执行时由Java语句抛出
3、 出现执行时异常后,系统会把异常一直往上层抛,一直遇到处理代码。
4、 如不对执行时异常进行处理,那么出现异常之后。要么线程中止。要么主程序终止。
5、 举例:
ArrayStoreException:试图将错误类型的对象存储到一个对象数组时抛出的异常
ClassCastException:试图将对象强制转换为不是实例的子类时,抛出该异常
IllegalArgumentException:抛出的异常表明向方法传递了一个不合法或不对的參数
IndexOutOfBoundsException:数组等排序索引超出范围时抛出
NoSuchElementException:表明枚举中没有很多其它的元素
NullPointerException:当应用程序试图在须要对象的地方使用 null 时。抛出该异常
类型2:非执行时异常
1、RuntimeException以外的异常
2、也称为受检查异常,编译器要求我们必须处理。否则不能编译通过
3、举例:
IOException
SQLException
用户自己定义异常
转自: http://www.tuicool.com/articles/YVZBNfN
相关文章
- Java 并发基础
- Java基础之异常机制学习&分析
- java基础---->java中正则表达式二
- java基础---->摘要算法的介绍
- Java为什么设计成 String 不能用 == 来进行比较
- java文档注释主要使用方法
- Java入门到精通——基础篇之Java集合
- java基础(十五)----- Java 最全异常详解 ——Java高级开发必须懂的
- ODPS-Java-SDK快速入门
- java program arguments 与 vm arguments、Environment varilables
- 【Java面向对象学习】一张图搞定Java面向对象
- 超全面的JavaWeb笔记day07<Java基础加强>
- JAVA实现MD5加密
- PHP调用JAVA的WebService简单实例
- Java 基础(面向对象特征之三:多态性)
- JAVA:值传递和引用传递
- Java项目构建基础:统一结果,统一异常,统一日志
- java-基础-内部类
- java-并发-CountDownLatch、CyclicBarrier和Semaphore
- java reflect反思总结
- java基础
- 大数据必学Java基础(四十四):接口讲解
- 大数据必学Java基础(十八):条件运算符和位运算符
- 大数据必学Java基础(十二):基本数据类型
- LeetCode-171. Excel 表列序号(java)
- 【Java基础系列】Cron表达式使用