Swing1 [Java] finalize 메소드 발단 c++을 주로 썼다보니 생성자, 소멸자에 대한 개념이 있었는데 이번에 학교 과제를 하게 되면서 Swing 애플리케이션을 작성하다가 애플리케이션이 꺼질 때 다른 객체도 종료하고 싶어서 Java 소멸자를 알아보았다. Java에는 소멸자 메소드는 따로 없고, 유사하게 작동하는 finalize가 있다고 한다. 하지만, 자바는 가비지 컬렉터(GC)가 힙 영역을 관리하고 있기 때문에 finalize 메소드를 쓰더라도 언제 동작할지 모르고(실행을 보장하지 않음) 사용자가 직접 작성하는 것도 위험하다는 의견이 있었다. 무엇보다도 Java9부터는 Object.finalize가 사라진다는 글을 보고 나서는 더 이상 사용하지 않는 메소드임을 알게 되었고, 찾아봤던 질문의 답변도 대부분 finalize()를 통한 방법이.. 2020. 9. 8. 이전 1 다음