반응형
자바(Java) 예외처리(Exception)
에러는 시스템에 비정상적인 상황이 생겼을 때 발생한다. 이는 시스템 레벨에서 발생하기 때문에 심각한 수준의 오류이다. 따라서 개발자가 미리 예측하여 처리할 수 없기 때문에, 애플리케이션에서 오류에 대한 처리를 신경 쓰지 않아도 된다.
오류가 시스템 레벨에서 발생한다면, 예외는 개발자가 구현한 로직에서 발생한다. 즉, 예외는 발생할 상황을 미리 예측하여 처리할 수 있다. 개발자가 처리할 수 있기 때문에 예외를 구분하고 그에 따른 처리 방법을 명확히 알고 적용하는 것이 중요하다.
모든 예외 클래스는 Throwable 클래스를 상속받고 있으며, Throwable은 최상위 클래스 Object의 자식 클래스다.
Exception은 수많은 자식클래스를 가지고 있다. 그 중 RuntimeException을 주목해야 한다. RuntimeException은 CheckedException과 UncheckedException을 구분하는 기준이다.
Checked Exception | Unchecked Exception | |
처리 여부 | 반드시 예외처리 필요 | 명시적인 예외처리 |
확인 시점 | 컴파일 단계 | 실행 단계 |
예외 발생시 트랜잭션 처리 | 롤백 하지 않음 | 롤백 함 |
대표적인 예 | IOException InterruptedException |
NullPointerException IndexOutOfBoundesException ClassCastException |
두 Exception의 가장 명확한 기준은 '예외처리를 무조건 해야한다, 안해도 된다' 이다.
반응형
'Java' 카테고리의 다른 글
[Java SpringBoot] Retrofit2 연동 및 사용법 예제 (0) | 2021.06.18 |
---|---|
자바(JAVA) 버전 별 특징 및 차이 (0) | 2021.06.17 |