异常和处理
基本概念
异常:
在程序出现任何错误将导致运行下去,我们把它称之为异常。
在java API中有一个最大的异常类,它代表着所有的异常(Throwable)
它是所有异常对象的父类或超类。
它有两个直接的已知子类(Error,Exception)
Error:同代表比较严重的错误级别,在程序中无法直接去捕获的处理,例如:JVM错误等等。
Exception:代表异常,这类的异常处理是可以在程序中进行处理的,所以它的级别要比Error要高。通常我们需要关心的就是Exception以及它的子类。
Exception异常主要分为两类:
1.检查时异常
检查时异常指通常在代码编写阶段,强制要求我们去处理的异常类。例如:SQLException、IOExcepotion等等。检查时异常是在编译阶段就要进行处理的,如果不进行处理,编译是无法通过的
2.运行时异常
运行时异常,指在程序运行的过程中有可能引发的异常,在编译时,不要求也不强制我们去处理这个
处理异常的方式
异常的处理方式:
1.使用throws关键字,将异常抛出,自己本身不做任何的异常捕获和处理,交由调用方进行处理。
2.使用try…catch()语句块捕获和处理异常。在使用catch语句块
异常重抛
异常重抛:
所谓的异常重抛,就是在catch语句块中重新将异常抛出,那么让调用方去处理这个异常。
重抛异常使用thronw关键字,将
自定义异常:
当JDK中的常量异常类不能满足我们的业务需求时,或者我们根据子的异常提示信息来显示异常,那么我们可以自定义异常类