이펙티브 자바 2장 Item9를 요약한 내용입니다.
InputStream, OutputStream, java.sql.Connection등 close메서드를 호출해 직접 닫아줘야하는 라이브러리들이 존재한다.
자원을 닫지 않으면 성능문제로 이어지기 때문에 반드시 자원을 반환해주어야 한다.
자원 회수를 보장하기위해 try-finally문을 사용할 수 있지만 자원이 여러개면 코드가 너무 지저분해진다.
또한 예외 추적이 불가능해지기도 한다.
try-with-resources문을 사용하면 정확하고 쉽게 자원을 회수할 수 있다.
이 구조를 사용하기 위해서는 사용하는 자원이 AutoCloseable 인터페이스를 구현해야 한다.
catch절을 사용해 다수의 예외를 처리할 수 있다
[이펙티브 자바] Item 11. equals를 재정의하려거든 hashCode도 재정의하라 | 3장 (2) | 2023.05.10 |
---|---|
[이펙티브 자바] Item 10. equals는 일반규약을 지켜 재정의하라 | 3장 (0) | 2023.04.26 |
[이펙티브 자바] Item 8. finalizer와 cleaner 사용을 피하라 | 2장 (0) | 2023.04.12 |
[이펙티브 자바] Item 7. 다 쓴 객체 참조를 해제하라 | 2장 (0) | 2023.04.05 |
[이펙티브 자바] Item 6. 불필요한 객체 생성을 피하라 | 2장 (0) | 2023.04.05 |