Java 异常的初识

来源:互联网 发布:易金通软件客服电话 编辑:程序博客网 时间:2024/06/05 04:37

一、什么是异常

阻止当前方法或作用域继续执行,称之为异常

二、异常处理的作用

正确处理异常能够将异常提供给编程人员或用户,使本来已经中断了的程序以适当的方式继续运行或者是退出,并且能够保存用户当前的操作,或者进行数据回稳,最后把占用的资源释放。

二、异常的体系结构

Throwable 是java.lang 包中一个专业用来处理异常的类,他有两个子类,即Error和Exception。

Error : 用来处理程序运行环境方面的异常。比如 : 虚拟机错误、装载错误和连接错误,这类错误主要是和硬件有关,而不是程序本身抛出的。(程序终结者!你只能听之任之,不用管他,交给JVM(Java虚拟机)即可。)

Exception : exception的出现说明程序要么编码、环境、用户操作输入等出现了问题。代码本身存在问题。 exception 主要分为两大类,分别是Runtime exception (运行时异常/非检查异常)和 检查异常(Check exception)。

备注 : 由程序本身引起的异常,但不是程序主动抛出,而是在程序运行中产生,称之为运行时异常,不管你是否愿意捕获和处理,他总要被抛出! 。
例如 :程序中除数为0引起的错误、数组下标越界等。

其实,Error 可以形象比喻成 “癌症晚期”,Exception 比喻为 “可治愈性疾病” ,我们能够处理 就是 “可治愈性疾病”Exception

常见的运行时异常如下:
1) 算术异常(ArthmeticException ): 由于除数为0引起的

 int one = 12;  int two = 0;  System.out.println(one/two);

2)类型转换异常(ClassCastException) : 当一个对象归为某个类,单实际上此对象并不是由这个 类创建,也不是其子类创建,则会引起异常

Animal dog = new Dog();Cat cat = (Cat)dog;

3)空指针异常(NullPointerException) : 程序试图访问一个空数组中的元素或者访问空的对象中的方法或变量产生的异常

String str = null;System.out.println(str.length());

4)数组下标越界异常(ArrayIndexOutOfBoundsException): 访问数组下标越界

int[] arrays = {1,2,34};System.out.println(arrays[3]);

提供一张参考图
这里写图片描述

原创粉丝点击