catch 블록을 보고합니다.
의도된 경우도 있으나 빈 catch 블록은 디버그 작업을 복잡하게 만들 수 있습니다.
또한 catch 매개변수를 무시하는 것은 잘못된 코드일 수 있습니다.
마지막으로, 정적 코드 분석자는 catch 블록이 NullPointerException과 같은 중요한 VM 예외를 확인 없이 무시하는 것을 탐지하는 경우 보고합니다. 그러한 예외를 (기록하거나 다시 던지지 않고) 무시하면 버그가 숨겨집니다.
이 검사는 ignore 또는ignored라는 이름의 catch 매개변수를 보고하지 않습니다.
반대로 이 검사는 ignore 또는 ignored라는 이름의 catch 매개변수가 실제로 사용 중인 경우에 대해 경고합니다.
또한 이 검사는 이름이 expected 또는 ok인 테스트 소스 내 catch 매개변수를 보고하지 않습니다.
예외 이름을 ignored로 변경하는 빠른 수정을 사용할 수 있습니다.
빈 catch 블록에 대해서는 catch 본문을 생성하는 추가적인 빠른 수정이 제안됩니다.
설정 | 에디터 | 파일 및 코드 템플릿의 코드 탭에서 'Catch Statement Body' 템플릿을 수정할 수 있습니다.
예:
try {
throwingMethod();
} catch (IOException ex) {
}
빠른 수정을 적용한 후:
try {
System.out.println(System.in.read());
} catch (IOException ignored) {
}
검사 구성:
catch 블록을 무시하려면 'catch' 블록에 주석이 포함되어 있을 경우 경고 안 함 옵션을 사용하세요.
catch 블록을 무시하려면 'catch' 블록이 비어 있지 않을 경우 경고 안 함 옵션을 사용하세요.
ignored인 사용 중인 변수를 무시하려면 'ignore(d)'라는 예외가 실제로 무시되지 않은 경우 경고 안 함을 사용하세요.
2018.1의 새로운 기능