본문 바로가기
Java

[퍼온 글] Checked vs Unchecked Exceptions (체크예외, 언체크 예외)

by Jordy-torvalds 2020. 5. 6.
반응형

출처: http://www.nextree.co.kr/p3239/

 

 

 

 

 

언체크 예외

- RuntimeException을 상속한 것들

- 런타임 예외라고도 함.

- 따로 catch문으로 잡거나, throws로 선언하지 않아도 됨.

- 프로그램에 오류가 있을 때 발생하도록 의도된 것들.

 

 

예외 처리 방식

1. 예외 복구

- 예외 발생 시 예외를 try, catch, finally 등을 사용하여 최대한 처리함으로써 , 프로그램의 흐름을 정상화 시키는 방식

 

2. 예외 회피

- 메소드 선언부에 throws ~~~Exception 이런 식으로 구현해서

현재의 메소드 내부가 아닌, 메소드를 호출한 곳에서 에러를 처리하게 하는 방식

남발하면 안됨, 막 던지다가 제대로 처리 안하면 에러남

 

3. 예외 전환

catch(SQLException e) {  

   ...

   throw DuplicateUserIdException();

}

 

- 예외를 잡아서 다른 예외를 던지는 것

- 호출한 쪽에서 예외를 받아서 처리할 때 좀 더 명확하게 인지할 수 있도록 돕기 위한 방법

(어떤 예외인지 분명해야 처리가 수월해지기 때문)

예를 들어 Checked Exception 중 복구가 불가능한 예외가 잡혔다면 이를 Unchecked Exception으로 전환하여서 다른 계층에서 일일이 예외를 선언할 필요가 없도록 할 수도 있음.

 

 

http://www.nextree.co.kr/p3239/ 글 써주신 분 감사합니다.

 

반응형