아이템8

    [Effective Java] item 8 + 9. finalizer와 cleaner 사용을 피하라, try-finally보다는 try-with-resources를 사용하라

    본문은 Effective Java를 읽고 정리한 내용을 기반으로 작성된 글입니다. [ item 8. finalizer와 cleaner 사용을 피하라 ] 자바는 두 가지 객체 소멸자를 제공한다. ☑️ finalizer : 예측할 수 없고, 상황에 따라 위험할 수 있어 일반적으로 불필요하다. ☑️ cleaner : finalizer보다는 덜 위험하지만, 여전히 예측할 수 없고, 느리고, 일반적으로 불필요하다. finalizer와 cleaner는 즉시 수행된다는 보장이 없다. 얼마나 신속하게 수행될지는 전적으로 가비지 컬렉터 알고리즘에 달렸으며, 동작 또한 마찬가지 finalizer를 달아두면 그 인스턴스의 자원 회수가 제멋대로 지연될 수 있다. 수행 여부조차 보장하지 못한다. 따라서 상태를 영구적으로 수정하..