가비지 콜렉션을 연구 중이므로 Java 가상 머신에서 내부적으로 어떻게 작동 하는지를 연구하고 있습니다. finalize (java.lang.Object
에 위치)라는 메서드를 발견했습니다. 이 코드 시도 :Java [가비지 콜렉션]의 Finalize 메소드
class Demo {
int x= 10;
int y = 20;
public void finalize() throws Throwable {
System.out.println("Finalize method");
}
static void show() {
Demo d1= new Demo();
display();
}
static void display()
{
Demo d2 = new Demo();
}
}
class Temp {
public static void main(String args[]) throws Exception {
Demo.show();
}
}
이 코드를 컴파일 할 수 있었다, 그러나 나는이 코드를 실행하면 예외없이 출력이 없습니다.
가능한 경우 알려주세요.
내 문제 (tutorialsPoint) (JavaRevisited)를 해결하기 위해 Google과 다른 많은 유명 블로그를 사용해 보았습니다.
심지어 stackoverflow를 검색했지만 문제를 해결할 수 없습니다.
P .: 출력은 사용자가 지적 할 수있는 Finalize 메서드 여야합니다. 제발 도와주세요.
요약하면, 내 질문은 : Finalize 메서드를 실행할 수없는 이유는 무엇입니까?
당신의 프로그램이 종료하기 전에 개념을 완성 이해하는 데 매우 도움이 될 것입니다. – immibis
'demo.show();'-> 프로그램은 * 그대로 컴파일되지 않습니다. – TheLostMind
나는 거기에 원하는 결과를 얻을 수있는 방법을 묻는 방법입니다. 메서드를 최종 ... 만약 내가 1000 개체 (나는 이것이 1000 개체를 필요로하는 바보 같은 생각을 알고) 글쎄 그냥 난 가비지 수집 방법을 정확히 알고 싶어요 work –