본문 바로가기
개발/JAVA

[JAVA] Error, Checked Exception, Unchecked Exception 비교

by zuzuu 2022. 1. 12.
반응형


자바에서는 예외를 크게 Error와 Exception으로 구분하고, Exception은 RuntimeException 상속 여부에 따라 Checked Exception, Unchecked Exception으로 구분된다.

 

Error

시스템에 비정상적인 상황이 발생한 경우로 시스템 레벨에서 발생하는 심각한 수준의 오류를 의미하며, 개발자가 에측할 수 없기에 미리 Handling할 수 없다.


Exception

개발자가 구현한 로직에서 발생하는 것으로 개발자가 미리 예측하여 방지할 수 있어서 상황에 맞게 Handling 해야한다.

 

아래는 Checked Exception과 Unchecked Exception을 비교한 표이다.

  Checked Exception Unchecked Exception
로직에서 예외처리 여부 필수
반드시 예외처리 코드가 있어야 함
필수 X
예외 확인 시점 컴파일 단계 런타임 중
예외 발생시 트랜잭션 처리 Roll-back하지 않음 Roll-back처리 됨
예시(대표적인 클래스) Exception을 상속받는 클래스 중
RuntimeException을 상속받지 않는 모든 예외 클래스

ex) ClassNotFoundException, IOException, SQLException
RuntimeException을 상속받는 모든 예외 클래스

ex) NullPointerException, IndexOutOfBoundException

 

728x90
반응형

댓글