catch
块。
虽然偶尔是有意为之,但空的 catch
块可能导致调试复杂化。
此外,忽略 catch
参数可能是错误的。
最后,静态代码分析器会报告是否检测到 catch
块可能无提示地忽略重要的 VM 异常,如 NullPointerException
。 忽略这样的异常(不记录或重新抛出)可能会隐藏错误。
该检查不报告任何命名为 ignore
或 ignored
的 catch
参数。
相反,它将对真正在使用的命名为 ignore
或 ignored
的 catch
参数发出警告。
此外,该检查不会报告命名为 expected
或 ok
的测试源中的 catch
参数。
您可以使用快速修复将异常名称更改为 ignored
。
对于空的 catch 块,建议使用其他的快速修复来生成 catch 区块体。
您可以在设置 | 编辑器 | 文件和代码模板中的“代码”选项卡上修改“catch 语句体”模板。
示例:
try {
throwingMethod();
} catch (IOException ex) {
}
在应用快速修复后:
try {
System.out.println(System.in.read());
} catch (IOException ignored) {
}
配置检查:
catch
块。
catch
块。
ignored
的变量。
2018.1 的新功能