예외란 무엇인가

2022. 4. 12. 15:41BackEnd(Java)/예외처리

Java에서의 예외는 크게 Error, RuntimeException(Uncheck Exception), OtherException(check Exception),

총 3가지의 종류가 존재한다.

 

그림 1 - 자바 예외 종류

 

Errors : 메모리 부족, 스택오버플로우 등 JVM이나 하드웨어 등 시스템의 문제로 발생하는 것을 의미함.

개발단계에서 처리할 수 있는 영역이 아니라 대응하기 어려움

 

Excpetion : Error와 다르게 개발자가 개발단계에서 처리할 수 있다.

Exception은 RuntimeException(Unchecked Exceptions)과 OtherException(Checked Exception)으로 나뉜다.

 

 

Checked Exception : 컴파일 시 발생되는 예외로 반드시 예외 처리를 해야 한다.

 - Try/Catch로 예외처리를 하거나 Throws로 예외를 던져버림

 

UnChecked Exception : 컴파일 후 런타임 시 발생되는 예외로 꼭 예외 처리를 해줄 필요는 없음

 - 대표적으로 NPE(NullPointException 등이 존재함)

 

두 예외를 쉽게 비교하기 위해 아래 표로 정리하였다.

 

  Checked Exception Unchecked Exception
예외  반드시 예외 처리 생략(필요시 예외처리)
확인 시점 컴파일 런타임
예외발생시 트랜잭션
처리
rollback 안함 rollback 함
특징 컴파일러가 예외처리 했는 지 확인 런타임 도중 예외 발생
용도 파일 / 메모리 네트워크 입출력
DB연결
Thread 충돌
사용자 입력 오류 등..
종류 -파일입출력
-IOException
-쓰레드
-URL
-SQL Exception
-IOException
-RunTime Exception
-NullPoint Exception
-System Exception
-ArrayIndexOutofBound
등...

 

 


참고자료

반응형

'BackEnd(Java) > 예외처리' 카테고리의 다른 글

예외 종류 정리  (0) 2022.04.12
공통 예외처리 적용하기  (0) 2022.04.11