Java异常体系

01

Java异常

Java异常是发生在程序执行过程中阻碍程序正常执行的错误事件。Java异常机制可以使程序中异常处理代码和正常业务代码分离,保证程序代码更加优雅,并提高程序健壮性。Java的异常体系总体图如下:

02

Error

指程序无法处理的错误,表示应用中较严重的问题。主要指JVM出现的问题,如系统崩溃、虚拟机错误、内存空间不足和方法调用栈溢等情况。错误类异常主要分为以下两类:VirtulMachineError:虚拟机错误异常OutOfMemoryError:内存溢出StackOverFlowError:堆栈溢出

AWTError:AWT是使用操作系统中的图形函数的抽象窗口工具,AWT组件出错

03

Exception

指程序可以处理的异常,可以捕获且可能恢复。遇到这类异常,应该尽可能处理异常,使程序恢复运行,而不应该随意终止异常。可检查异常可被处理的异常,必须显示处理Checked异常,即必须显示加try-catch才能编译通过。其特点是Java编译器会主动去检查。常见的可检查异常如下:IOException:IO错误EOFExcption:文件已结束异常FileNotFound:文件未找到异常SocketException:Socket异常SQLException:SQL数据库异常

RuntimeException运行时异常,又称"不可查异常"。其特点是Java编译器不会主动去检查。常见的运行时异常如下:

NullPointerException:空指针异常ClassNotFoundException:类未找到异常IllegalArgumentException:非法参数异常ArrayIndexOutOfBoundsException:数组索引越界异常ArithmeticException:算术异常,如

04

异常关键词

Java异常机制中用到的几个关键字:try、catch、finally、throw、throwstry:用于监听。将要被监听的代码(可能抛出异常的代码)放在try语句块之内,当try语句块内发生异常时,异常就被抛出catch:用于捕获异常。catch用来捕获try语句块中发生的异常finally:finally语句块总是会被执行。它主要用于回收在try块里打开的物力资源(如数据库连接、网络连接和磁盘文件)。只有finally块,执行完成之后,才会回来执行try或者catch块中的return或者throw语句,如果finally中使用了return或者throw等终止方法的语句,则就不会跳回执行,直接停止throw:用于抛出异常throws:用在方法签名中,用于声明该方法可能抛出的异常

  • 发表于:
  • 原文链接http://kuaibao.qq.com/s/20180222G0BUS900?refer=cp_1026
  • 腾讯「云+社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 yunjia_community@tencent.com 删除。

扫码关注云+社区

领取腾讯云代金券