Warum ist die finalize () Methode in java.lang.Object "protected"?

Aus Neugier,

Warum ist die finalize() Methode Zugriff Modifikator wird als protected. Warum kann es sein public? Kann jemand erklären mir irgendeinen bestimmten Grund dafür?

Auch, ich kam zu wissen, dass finalize() - Methode nur einmal aufgerufen wird. Wenn ich rufe, es zweimal in meinem Programm intern, was ist passiert? Wird der garbage collector aufrufen, diese wieder?

private void dummyCall() {
    try {
        finalize();
        finalize();
    } catch (Throwable e) {
        e.printStackTrace();//NOT REACHES EXCEPTION
    }
}

InformationsquelleAutor der Frage bragboy | 2010-02-18

Schreibe einen Kommentar