Error, Checked Exception, Unchecked Exception 정리

그냥 준현·2024년 7월 8일
0

Computer Science

목록 보기
11/16

1. 예외 처리

Java에서는 예외 처리 매커니즘을 통해 프로그램에서 발생할 수 있는 다양한 오류 상황을 처리합니다.

1.1 클래스 구조

Exception과 Error의 클래스 구조는 아래와 같습니다.

1.2 Error

Error는 시스템 수준에서 발생하는 심각한 문제를 나타냅니다.

주로 JVM 관련 오류나 메모리 부족 등 복구 불가능한 상황을 나타내기 때문에, 애플리케이션 코드에서 이를 처리하지 않아도 됩니다.

  • OutOfMemoryError: JVM이 메모리를 모두 사용
  • StackOverflowError: 메서드 호출이 너무 깊어 스택 메모리 초과

1.3 Checked Exception

Checked Exception은 컴파일 타임에 반드시 처리해야 하는 예외입니다.

이러한 예외는 예측 가능한 문제를 나타내며, 반드시 try-catch 블록으로 처리하거나 throws 키워드를 사용하여 메서드 시그니처에 선언해야 합니다.
주로 외부 자원(DB Connection 등)과의 상호작용에서 발생합니다.

  • IOException: 입출력 작업에서 발생
  • SQLException: 데이터베이스 접근에서 발생

1.4 Unchecked Exception

Unchecked Exception은 런타임에 발생할 수 있고, 예외 처리를 강제하지 않습니다.

컴파일 타임에 예외 처리를 강제하지 않는 예외입니다.
주로 프로그래머의 실수로 발생합니다.

  • NullPointerException: 객체 참조가 null인 상태에서 메서드 호출이나 필드 접근 시도
  • ArrayIndexOutOfBoundsException: 배열 인덱스가 범위를 벗어남
  • ArithmeticException: 0으로 나누는 연산 시도
profile
잘해야 재밌어

0개의 댓글

관련 채용 정보