Java异常简介
2016-05-18 15:34
267 查看
异常指异于常态,和正常情况不一样,有错误出现。阻止当前方法或作用域执行的问题,称之为异常。
Java中所有的与异常有关的类都继承于Throwable类,Throwable类有两个儿子,一个是Error类,一个是Exception类。
Error类异常包括有虚拟机错误,线程死锁等,Error异常出现,程序就彻底崩溃了。
Exception异常的出现,说明程序存在问题,可能是编码、环境、用户操作输入等原因而导致异常,Exception有很多儿子,常见为RuntimeException(运行时异常),还有其他异常。RuntimeException为非检查异常,而其他异常为检查异常。
引起RuntimeException异常的情况有很多,比如引用了一个空对象的属性火方法、数组访问越界、错误的类型转换、算术方面所引起的异常(如除0)等,以上四种情况分别对应于空指针异常(NullPointerException)、数组下标越界异常(ArrayIndexOutOfBoundsException)、类型转换异常(ClassCastException)和算术异常(ArithmeticException),当然还有其他很多种运行时异常,他们都是RuntimeException的子类,这里不逐一介绍了。
运行时异常会由Java虚拟机自动抛出并自动捕获,而运行时异常的出现绝大部分情况下说名代码本身存在问题,应该从逻辑上改进代码
检查异常,引起检查异常出现的原因可能是多种多样的奇葩原因,如文件异常(IOException)、SQL异常(SQLException)等,与RuntimeException不同,对于检查异常需要自己手动添加捕获以及处理语句
Java中所有的与异常有关的类都继承于Throwable类,Throwable类有两个儿子,一个是Error类,一个是Exception类。
Error类异常包括有虚拟机错误,线程死锁等,Error异常出现,程序就彻底崩溃了。
Exception异常的出现,说明程序存在问题,可能是编码、环境、用户操作输入等原因而导致异常,Exception有很多儿子,常见为RuntimeException(运行时异常),还有其他异常。RuntimeException为非检查异常,而其他异常为检查异常。
引起RuntimeException异常的情况有很多,比如引用了一个空对象的属性火方法、数组访问越界、错误的类型转换、算术方面所引起的异常(如除0)等,以上四种情况分别对应于空指针异常(NullPointerException)、数组下标越界异常(ArrayIndexOutOfBoundsException)、类型转换异常(ClassCastException)和算术异常(ArithmeticException),当然还有其他很多种运行时异常,他们都是RuntimeException的子类,这里不逐一介绍了。
运行时异常会由Java虚拟机自动抛出并自动捕获,而运行时异常的出现绝大部分情况下说名代码本身存在问题,应该从逻辑上改进代码
检查异常,引起检查异常出现的原因可能是多种多样的奇葩原因,如文件异常(IOException)、SQL异常(SQLException)等,与RuntimeException不同,对于检查异常需要自己手动添加捕获以及处理语句
相关文章推荐
- 【Java】学习笔记一
- Java 多线程CountDownLatch、CyclicBarrier、Thread.join方法基本用法
- Java中Arrays.asList的使用
- java设计模式分类
- Java编程思想第四版第七章学习(1)——基类初始化
- 重读java编程思想之复用类之final
- Java CopyOnWriteArrayList工作原理及实现(一)
- windows中java读目录空格变成%20 处理方法
- springmvc封装date类型
- java运行原理
- JAVA设计模式之单例模式
- Java进阶学习第十九天——dbutils与案例
- Java设计模式——策略模式
- java获取当前类的绝对路径
- java简单工厂设计模式
- Spring中对properties属性文件加密及其解密
- java Base64加密解密
- Java 特殊性领会
- 一道简单的算法题:输入日期(JAVA)
- spring的配置文件详解