我很难解释这两个(看似简单的)句子的含义:

“已检查的异常由编译器在编译时检查”

这是什么意思?编译器是否检查是否捕获了所有(在代码中引发的)检查异常?

“未检查的异常是在运行时而不是在编译时检查的”

“检查”在这句话中是什么意思?我以为未检查的异常只是在运行时抛出的?

最佳答案

在编译时


有两种类型:


已检查:表示方法是否抛出所需的异常
未处理的检查异常:如果该方法未引发所需的异常,则会导致编译错误。


在运行时



称为“未经检查的异常”在运行时发生,不需要显式处理。
RuntimeException及其子类或Error及其子类都属于Unchecked。

关于java - 检查(未检查)异常(Java),我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/17436891/

10-11 22:20
查看更多