1. Checked Exception (체크 예외)
- 코드에서 반드시 예외를 처리(try-catch)하거나
- 아니면 메서드 시그니처에 throws로 던져야 함
IOException, SQLException, ClassNotFoundException, InterruptedException
2. Unchecked Exception (언체크 예외, Runtime Exception)
- try-catch 없어도 컴파일 에러 없음
- 런타임 실행 중 발생할 수 있는 예외
NullPointerException, ArrayIndexOutOfBoundsException, IllegalArgumentException, ClassCastException, ArithmeticException, RuntimeException 계열 전부
| 구분 | Checked Exception | Unchecked Exception |
| 예외 처리 강제 | ✔ 반드시 try-catch 또는 throws | ❌ 강제 없음 |
| 컴파일 에러 | 처리 안 하면 컴파일 에러 | X |
| 발생 시점 | 컴파일 + 런타임 | 런타임 |
| 원인 | 외부 자원 문제 | 코드/로직 버그 |
| 예시 | IOException, SQLException | NPE, IllegalArgumentException |
'WEB개발 > JAVA' 카테고리의 다른 글
| 람다 Lambda (0) | 2026.01.21 |
|---|---|
| java Stream API (0) | 2026.01.12 |
| [JAVA - NIO] New Input/Output (0) | 2025.12.04 |
| Daemon Thread vs User Thread (0) | 2025.02.21 |
| CyclicBarrier, CountDownLatch (0) | 2025.02.21 |