CheckedException vs UncheckedException 차이점 및 활용법
1. 예외(Exception)란?
Java에서 예외(Exception)는 프로그램 실행 중에 발생할 수 있는 **비정상적인 상황**을 의미합니다. 예외 처리를 올바르게 하지 않으면 프로그램이 갑자기 종료될 수 있기 때문에, 예외를 적절히 처리하는 것이 중요합니다.
2. CheckedException vs UncheckedException 차이
구분 | CheckedException | UncheckedException |
---|---|---|
정의 | 컴파일 타임에 체크되는 예외 | 실행 중(Runtime) 발생하는 예외 |
대표 예외 | IOException, SQLException | NullPointerException, ArithmeticException |
예외 처리 방식 | try-catch 또는 throws 필수 | 예외 처리를 강제하지 않음 |
3. CheckedException 예제
import java.io.*;
public class CheckedExceptionExample {
public static void main(String[] args) {
try {
FileReader file = new FileReader("test.txt");
BufferedReader reader = new BufferedReader(file);
System.out.println(reader.readLine());
reader.close();
} catch (IOException e) {
System.out.println("파일을 찾을 수 없습니다: " + e.getMessage());
}
}
}
4. UncheckedException 예제
public class UncheckedExceptionExample {
public static void main(String[] args) {
String text = null;
System.out.println(text.length()); // NullPointerException 발생
}
}
5. 언제 CheckedException과 UncheckedException을 사용해야 할까?
- CheckedException: 파일 입출력, 데이터베이스 연결처럼 반드시 예외 처리가 필요한 경우
- UncheckedException: 프로그래머의 실수로 발생할 가능성이 높은 경우 (ex: NPE, IndexOutOfBoundsException)
📌 더 많은 Java 예외 처리 방법이 궁금하다면?
Java 예외 처리 가이드도 함께 확인해보세요!
'Java 오류 & 개발 > Java 기본 문법 & 오류' 카테고리의 다른 글
[Java] String, StringBuilder, StringBuffer 차이점과 성능 비교 (1) | 2025.03.13 |
---|---|
[Java] Optional 클래스 활용법 및 NullPointerException 방지하기 (0) | 2025.03.13 |
[Java] Checked Exception vs Unchecked Exception 차이점 (1) | 2025.03.13 |
[Java] String vs StringBuilder vs StringBuffer 차이 (0) | 2025.03.12 |
[Java] Checked Exception vs Unchecked Exception 차이 (0) | 2025.03.12 |