异常Exception

异常

Java 中的异常(Exception)又称为例外,是一个在程序执行期间发生的事件,它中断正在执行程序的正常指令流。

异常Exception
异常的分类
Exception又分为两大类:

运行时异常都是RuntimeException类及其子类异常,如NullPointerException、IndexOutOfBoundsException 等,这些异常是不检查异常,程序中可以选择捕获处理,也可以不处理。这些异常一般由程序逻辑错误引起,程序应该从逻辑角度尽可能避免这类异常的发生。

非运行时异常是指 RuntimeException以外的异常,类型上都属于Exception 类及其子类。从程序语法角度讲是必须进行处理的异常,如果不处理,程序就不能编译通过。如 IOException、ClassNotFoundException等以及用户自定义的Exception 异常

/**
 * 捕获异常
 * Java异常处理通过5个关键字控制:try,catch,throw,throws和finally,
 * 捕获异常使用try…catch语句,把可能发生异常的代码放到try {…}中,
 * 然后使用catch捕获对应的Exception及其子类:
 */
        try {
            //要监控是否有异常的代码
            //代码A
            //代码B
        }catch (ExceptionType e1){
            //对异常1进行处理
        }catch (ExceptionType e2){
            //对异常2进行处理
        }finally {
            //无论是否发生异常都会执行该代码块
        }

捕获异常-嵌套try-catch异常Exception

抛出异常-throw throws

throw是显示的抛出一个异常,一般是在代码块的内部,当程序出现某种逻辑错误时由程序员主动抛出特定类型的异常
throws是方法可能抛出异常的声明,用在声明方法时,表示该方法可能抛出异常,然后交给上层调用它的方法处理
区别
throw出现在方法体,throws出现在方法头
throw是抛出了异常,执行throw则一定是抛出了某种异常,throws是表示出现异常的一种可能性,并不一定会抛出这些异常

上一篇:[LeetCode] 98. Validate Binary Search Tree


下一篇:hive第一次启动报报错: Call From bdc112/192.168.10.112 to bdc112:8020 failed on connection exception: java.ne