Checked Exception是编译时还是运行时?

时间:2018-05-27 06:25:04

标签: java exception-handling

我读到了Checked异常,它被编译器检查过,但只是运行时。

这是对的吗?

如果它是正确的那么?

2 个答案:

答案 0 :(得分:5)

在编译时检查已检查的异常以确保您正在处理它们,方法是捕获它们或声明包含方法throws异常。

在运行时,已检查和未检查的异常之间没有区别:它们由JVM以相同方式处理。所以“checked-ness”纯粹是一个编译时的概念。

答案 1 :(得分:1)

运行时异常不是已检查的异常。已检查的异常是类Exception以及除RuntimeException之外的所有子类。

已检查的异常需要在代码中处理或在方法的签名中声明,否则您的代码将无法编译。不需要处理或声明运行时异常。