异常

xiaoxiao2021-02-28  61

Java中提供了大量的异常类, 这些类都继承自 java.lang.Throwable 类, 下图展示了Throwable 类的继承体系:

 

 可以看到, Throwable 类有两个直接子类 Error 和 Exception 其中 Error代表程序中产生的错误, Exception 代表程序中产生的异常。

  Error类:

   错误类, 它表示Java运行时产生的系统内部错误或资源耗尽的错误,是比较严重的错误, 仅靠修改程序本身是无法恢复执行的。

  Exception类:

  异常类,在Exception 中有一个特殊的RuntimeException 类, 该类及其子类用于表示运行时异常, 除此之外, Exception类下所有其他子类都用于表示编译时异常。

 Throwable常用方法

方法声明功能描述

String getMessage()

void printStackTrace()

void printStackTrace(PrintStream s)

返回此throwable的详细消息字符串

将此throwable 及其追踪输出至标准错误流

将此throwable 及其追踪输出到指定的输出流

编译时异常和运行时异常:

 一、编译时异常:也称checked 异常, 其特点是在Java编译器会对其进行检查, 如果处在异常就必须对其进行处理, 否则程序无法通过编译。

  处理编译时期的异常有两种方法:

  1、使用try...catch语句对其进行捕获。

  2、使用throws 关键字声明抛出异常, 调用者对其进行处理。

二、运行时异常: 也称unchecked 异常, 其特点是Java编译器不会对其进行检查, 也就是说, 即使没有try...catch语句捕获或使用throws 关键字进行声明抛出, 程序也能编译通过。 运行时异常通常是由程序中的逻辑错误引起的, 在程序运行时无法恢复。比如数组下标越界等。

转载请注明原文地址: https://www.6miu.com/read-2150312.html

最新回复(0)