一 、 异常的概念和 Java异常体系结构 异常是程序运行过程中出现的错误。本文主要讲授的是 Java语言的异常处理。Java语言的异常处理框架,是 Java语言健壮性的一 个重要体现。 Java把异常当作对象来处理,并定义一 个基类 java.lang.Throwable作为所有异常的超类。在 Java API中已经定义了许多异常类,这些异常类分为两大类,错误 Error和异常 Exception。 Thorwable类所有异常和错误的超类,有两个子类 Error和 Exception,分别表示错误和异常。其中异常类 Exception又分为运行时异常(RuntimeException)和非运行时异常,这两种异常有很大的区别,也称之为不检查异常(Unchecked Exception)和检查异常(Checked Exception)。下面将详细讲述这些异常之间的区别与联系: 1、Error与 Exception Error是程序无法处理的错误,比如 OutOfMemoryError、ThreadDeath等。这些异常发生时,Java虚拟机(JVM)一 般会选择线程终止。 Exception是程序本身可以处理的异常,这种异常分两大类运行时异常和非运行时异常。程序中应当尽可能去处理这些异常。 2、运行时异常和非运行时异常 运 行 时 异 常 都 是 RuntimeException类 及 其 子 类 异 常 , 如NullPointerException、IndexOutOfBoundsException等, 这些异 常 是 不检查异 常 , 程序中可以选择捕获处理, 也可以不处理。这些异 常 一般是 由程序逻辑错误引起的, 程序应该从逻辑角度尽可能避免这类 异 常 的发生。 非运 行 时 异 常 是 RuntimeException以外的异 常 , 类 型上都 属于 Exception类 及 其 子 类 。从程序语法角度讲是 必须进行 处理的异 常 , 如 果不处理, 程序就不能编译通过。如 IOException、SQLException等以及 用户自定义的 Exception异 常 , 一般情况下不自定义检查异 常 。 二、 异 常 的捕获和处理 Java异 常 的捕获和处理是 一个不容易把握的事情, 如 果处理不当, 不但会让程序代码的可读性大大降低, 而且导致系统性能低下, 甚至引发一些难以发现的错误。 Java异 常 处理涉及 到五个关键字, 分别是 :try、catch、finally、throw、throws。下面将骤一介绍, 通过认识这五个关键字, 掌握基本异 常 处理知识。 1、 异 常 处理的基本语法 在 java中, 异 常 处理的完整语法是 : Java代码 1. try{ 2. //( 尝 试 运 行 的 )...