Java 基础 · 单选题 · 第 6 题
Java 后端开发面试 · 第 6 题
关于 Java 异常体系,下列说法正确的是?
- ANullPointerException 是受检异常,不处理就会编译报错
- BIOException 是受检异常,方法里必须捕获或在签名中声明抛出
- COutOfMemoryError 等 Error 应当由业务代码捕获后继续运行
- DRuntimeException 及其子类必须在方法签名里用 throws 声明
答案
B B. IOException 是受检异常,方法里必须捕获或在签名中声明抛出
解析
Exception 中除 RuntimeException 及其子类以外的都是受检异常,编译器强制处理,IOException、SQLException 都属于这一类。NPE 等运行时异常是非受检的,通常反映代码缺陷。Error 表示 JVM 层面的严重问题,一般不应在业务代码里捕获后继续运行。