Java에서 Finalize() 메소드가 실행될 때
Java에서 클래스의 finalize() 메소드는 해당 클래스의 객체가 호출될 때 클래스는 가비지 수집이 예정되어 있습니다. 이러한 지식에도 불구하고 메서드의 사용자 정의 구현은 테스트 환경에서 실행되지 않을 수 있습니다.
Finalize() 실행 이해
finalize() 동작을 이해하는 열쇠( )는 가비지 수집 프로세스에 있습니다. 다음과 같은 경우 객체가 가비지 수집 대상이 됩니다.
그러나 객체가 실제로 수집되는 시점은 비결정적이며 JVM 구현에 따라 다릅니다. 결과적으로 finalize()는 무작위로 호출되거나 전혀 호출되지 않을 수 있습니다.
Finalize() 의존의 함정
Finalize()를 재정의하여 필수 응용 프로그램 정리를 수행하는 목적은 권장되지 않습니다. 이 방법에는 몇 가지 제한 사항과 단점이 있습니다.
대체 정리 기법
정리를 위해 finalize()를 사용하는 대신 다음 기법을 고려하세요.
위 내용은 Java의 finalize() 메소드는 실제로 언제 실행됩니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!