자원이 많아지면 코드가 장황해진다.
finally 내부에서 예외가 발생했을 때, 정상적인 동작을 기대하기 어렵고, finally 예외가 앞서 발생한 예외를 집어 삼킬 수 있다.
AutoCloseable을 구현하여 사용한다
try 문을 자원 할당과 함께 사용한다 ex) try(Hello hi = new Hello()) {}
코드가 짧고 읽기 수월하다
예외 역시 발생한 지점 하나만 보여줄 수 있다
핵심 정리
자원을 꼭 회수해야 할 때는 try-finally 대신 try-with-resources 를 사용하자. 코드는 간결해지고, 예외 정보는 유용해지며, 정확하고 쉽게 자원을 회수할 수 있다.