1. 예외(Exception)
- 런타임(프로그램 실행 중) 에 발생하는 예측지 못한 상황
- 해당 상황이 발생했을때 그에 대한 처리를 코딩 해 놓는 것을 예외 처리
- checked exception/unchecked exception
Checked Exception과 Unchecked Exception
Checked Exception
- 의미
- 처리
- 소스코드 내에서 반드시 try-catch문으로 처리해 줘야 함
- Java 구현
- RuntimeException을 상속받지 않는 모든 예외
Unchecked Exception
- 의미
- 예시
- 데이터가 없어서 발생하는 null pointer exception 등
- ArrayIndexOutOfBound
- 처리
- try-catch가 반드시 필요한 것은 아님
- 주로 클라이언트에게 응답을 보낼 때 사용
- Java 구현
- RuntimeException을 상속받는 예외는 모두 UnChecked Exception이다
예외 처리
try-catch-finally 구문
try {
// Exception이 예상되는 코드
} catch(Exception e) {
// 예외에 대응한 처리
}
- final은 예외 발생 여부와 관계없이 무조건 실행
<aside>
💡 try-catch에서 return 혹은 System.exit을 수행하면 final은 어떻게 될까?
System.exit()은 호출되는 순간 프로세스를 강제로 종료하므로, final은 실행되지 않는다
return은 예상치 못한 결과를 만들 수 있다. 아래의 글 참조
</aside>
[Back end] Java try catch finally 구문에서의 return