您的位置:首页 > 编程语言 > Java开发

java运行时异常与一般异常有何异同?

2016-07-01 09:53 351 查看

java运行时异常与一般异常有何异同?

运行时异常:由java虚拟机抛出的异常。用户不必处理。

一般异常是用户可以抛出的异常,如果抛出调用必须进行处理。

运行时异常表示虚拟机的通常操作中可能遇到的异常,是一种常见运行错误。java编译器要求方法必须声明抛出可能发生的非运行时异常,但是并不要求必须声明抛出未被捕获的运行时异常。

从机制角度来讲:

Runtime exceptions:

  在定义方法时不需要声明会抛出runtime exception;在调用这个方法时不需要捕获这个runtime exception;runtime exception是从java.lang.RuntimeException或java.lang.Error类衍生出来的。

Checked exceptions:

 定义方法时必须声明所有可能会抛出的checked exception;

在调用这个方法时,必须捕获它的checked exception,不然就得把它的exception传递下去;checked exception是java.lang.Exception类衍生出来的。从逻辑的角度来说,

checked exceptions和runtime exception是有不同的使用目的的。checked exception用来指示一种调用方能够直接处理的异常情况。而runtime exception则用来指示一种调用方本身无法处理或恢复的程序错误。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: