반응형
아이템 9 : try-finally보다는 try-with-resources를 사용하라
자바 라이브러리에는 close 메서드를 호출해 직접 닫아줘야 하는 자원이 많다.
전통적으로 자원이 제대로 닫힘을 보장하는 수단으로 try-finally가 쓰였다. 예외가 발생하거나 메서드에서 반환되는 경우을 포함해서 말이다.
자원이 둘 이상이면 try-finally 방식은 너무 지저분해진다.
try-with-resources를 사용하면 복수의 자원을 효율적으로 처리할 수 있다.
핵심 정리
꼭 회수해야 하는 자원을 다룰 때는 try-finally 말고, try-with-resources를 사용하자. 예외는 없다. 코드는 더 짧고 분명해지고, 만들어지는 예외 정보도 훨씬 유용하다. try-finally로 작성하면 실용적이지 못할 만큼 코드가 지저분해지는 경우라도, try-with-resources로는 정확하고 쉽게 자원을 회수할 수 있다.
반응형
'언어 > JAVA' 카테고리의 다른 글
[Effective Java] equals를 재정의하거든 hashCode도 재정의하라 (0) | 2020.03.14 |
---|---|
[Effective Java] equals는 일반 규약을 지켜 재정의하라 (0) | 2020.03.13 |
[Effective Java] finalizer와 cleaner 사용을 피하라 (0) | 2020.03.12 |
[Effective Java] 다 쓴 객체 참조를 해제하라 (0) | 2020.03.12 |
[Effective Java] 불필요한 객체 생성을 피하라 (0) | 2020.03.11 |