예외 계층

SungMin·2026년 6월 1일

자바 심화 정리

목록 보기
25/34

자바에서는 프로그램이 실행 도중에 예상치 못한 예외를 처리하기 위한 매커니즘을 제공한다.
이는 프로그램의 안정성과 신뢰성을 높이는데 중요하다.


예외 계층 구도

  • Object: 자바에서 기본형을 제외한 모든 것은 객체다.
  • Throwable: 최상위 예외, 하위에 exception과 error가 있다.
  • Error: 메모리 부족이나 심각한 오류로 어플리케이션이 복구가 되지 않을 때 발상하는 에러
  • Exception: 컴파일러가 체크하는 예외
  • RuntimeException: 컴파일러가 체크하지 않는 예외

체크 예외 vs 언체크 예외

체크예외는 명시적으로 개발자가 처리해야 한다.
그렇지 않을 경우 컴파일 에러가 발생한다.

언체크 예외는 개발자가 명시적으로 처리하지 않아도 된다.


주의

상속 관계에서 부모 타입은 자식을 담을 수 있다.
이 경우는 예외에서도 마찬가지인데 상위 예외를 catch로 잡으면 하위 예외까지 다 잡는다.
따라서 어플리케이션 로직에서는 Throwable 예외를 잡으면 안된다.
이럴 경우 Error 예외도 같이 잡을 수 있기 때문이다.
즉, 개발자는 Exception 예외부터 필요한 예외를 잡으면 된다.

profile
오늘도 한 걸음씩 나아가

0개의 댓글