finally 블록 내의 throw 구문을 보고합니다.
종종 의도된 것일 수도 있으나 이러한 throw 구문은 try 및 catch 블록에서 던지는 예외를 숨길 수 있으므로 디버그 프로세스가 복잡해집니다.
예:
class Fascinating {
void doTask(Task t) {
try {
t.activity();
} finally {
if (!t.finish()) {
throw new IllegalStateException();
}
}
}
}
예외를 던지는 메서드 호출에 관한 경고를 받으려면 선언된 예외가 던져질 수 있는 모든 곳을 경고 옵션을 사용하세요.