Java/Java Tips

AutoClosable에서 이용해서 리소스 사용 예외 처리하기

검정비니 2018. 6. 27. 22:05
728x90
반응형

AutoClosable에서 이용해서 예외 처리하기



자바 7부터, 리소스가 AutoCloseable 인터페이스를 구현하는 클래스에 속하는 경우 다음과 같은 코드 패턴에 대한 유용한 단축 기능을 제공한다.

(참고로, 자바에서 리소스란, 자바 응용프로그램 내에서 접근 가능한 데이터 조각을 의미한다. i.e. 클래스 등..  일반적으로, Class 클래스나 ClassLoader 클래스의 메소드들을 이용해서 리소스에 접근한다.)



//리소스 열기

try {

...

//리소스를 이용해서 작업을 한다.

...

} catch (Exception e) {

...

//리소스를 닫는다

...

}



AutoCloseable 인터페이스는 다음과 같은 단일 메소드를 포함한다 : void close() throws Exception


이 메소드를 이용해서 위와 같은 패턴의 예외 처리문을 간략화 시킬 수 있다.


try (Resource res = ...) {

...

//리소스를 이용해서 작업을 한다.

...

} //try문이 끝나는 순간, close 메소드가 호출되면서 리소스를 자동으로 닫아준다.



물론, 이 경우에도 리소스를 이용한 작업 이외의 예외에 대해서는 catch 문을 사용해서 예외를 처리해 주어야 한다.

반응형

'Java > Java Tips' 카테고리의 다른 글

자바의 장단점  (0) 2018.07.04
Java 8을 배워야 하는 이유  (0) 2018.06.28
자바 레퍼런스와 가비지 컬렉션  (0) 2018.06.28