Errors 초급

단일 catch 블록에서 여러 예외 타입을 처리합니다.

✕ Pre-Java 7
try {
    process();
} catch (IOException e) {
    log(e);
} catch (SQLException e) {
    log(e);
} catch (ParseException e) {
    log(e);
}
✓ Java 7+
try {
    process();
} catch (IOException
    | SQLException
    | ParseException e) {
    log(e);
}
이 코드에 문제가 있나요? 알려주세요.
📏

DRY 원칙

동일한 처리 로직을 세 번 대신 한 번만 작성합니다.

🔄

다시 던지기 가능

잡힌 예외를 정확한 타입으로 다시 던질 수 있습니다.

📖

스캔 용이

처리되는 모든 타입이 한 곳에 표시됩니다.

이전 방식
별도의 캐치 블록
모던 방식
다중 캐치
JDK 버전
7
난이도
초급
다중 캐치 예외 처리
사용 가능

JDK 7 (2011년 7월) 이후 널리 사용 가능

다중 캐치는 동일한 코드로 여러 예외 타입을 처리합니다. 예외 변수는 사실상 final이므로 래핑 없이 다시 던질 수 있습니다.

공유 𝕏 🦋 in