본문 바로가기

dev/자바

Try-With-Resource

자바 Resource 객체를 사용할 때

 

close를 호출 안 하면 메모리 누수가 발생하기 때문에

 

꼭 close를 호출해야 합니다.

 

대부분 Resource 객체를 try문 밖에 선언한 다음에

 

finally문에서 close를 호출하는데

 

이렇게 하면 코드가 길어지기 때문에 효율적이지 않습니다.

 

이럴 때 try-with-resource를 사용하면 쉽게 해결할 수 있습니다.

 

예제 코드

 

위의 예제 코드는 csv 파일을 읽는 것인데

 

파일 읽는 Resource 객체들을 try-with-resource를 사용하면 코드를 간단하게 작성할 수 있습니다.

 

그러나 Resource 객체가 AutoCloseable를 지원하지 않는다면

 

try-with-resource를 사용해도 close가 호출되지 않습니다.

 

Resource 객체가 AutoCloseable를 지원하는지 확인하려면

 

해당 Resource 객체가 AutoCloseable 인터페이스를 구현하고 있는지 확인하면 됩니다.

'dev > 자바' 카테고리의 다른 글

Java REST API 연계  (0) 2022.10.28
Java Collection forEach  (0) 2022.10.26
Arrays Collections sort  (0) 2021.12.16
List remove ConcurrentModificationException  (0) 2021.09.07
Java NumberFormat DecimalFormat  (0) 2021.07.06