- try … catch 문은 try 구현부 안에서 발생하는 오류(예외) 에 대해
catch 에서 원하는 로직을 실행하기 위해 사용한다. ( 오류, 예외 처리를 하기 위해 사용한다.)
try {
[구현부]
} catch ([처리할 예외 1 선언]) {
[예외 1 발생시 구현부]
} catch ([처리할 예외 2 선언]) {
[예외 2 발생시 구현부]
} finally{
[최종 구현부]
}
- catch 는 여러개 작성할 수 있다. 단, 보다 상위에 있는 예외가 하위에 있는 예외보다 부모여서는 안된다.
- finally 는 선택사항이다. 이가 가지는 구현부는 try를 정상 실행 햇든, catch 로 빠졌든 반드시 실행됨을 보장 받는다. 모든 catch 보다 아래에 잇어야 하고, 없거나, 한개만 작성할 수 있다.
Try-With-Resources
- Try-With-Resource 문은 일반 try문에서 AutoCloseable 인터페이스를 구현하는 어떠한 객체에 대해 반드시 이의 close 메서드를 호출 할 것을 보장 받기 위해 사용한다.
- 주로 JDBC를 활용하여 데이터베이스에 접속하는 등의 로직을 구현할 때 메모리 등의 자원 누수 및 커넥션이 정상적으로 닫히지 않아 DBMS가 데드락에 걸리는 현상을 방지하고자 사용한다.
try ([AutoCloseable 인터페이스를 구현하는 객체]) {
} .... (이하 동일)...