다음 종료 된 것은 내 클래스 코드 import java.net.*;
import java.util.*;
import java.sql.*;
import org.apache.log4j.*;
class Database {
private Connection conn;
private org.apache.log4j.Logger log ;
내 프로그램 코드의 개체에 finalize()을 호출하면 가비지 수집기가이 개체를 처리 할 때 JVM이 메서드를 다시 실행합니까? MyObject m = new MyObject();
m.finalize();
m = null;
System.gc()
가 finalize()에 대한 명시 적 호출이 JVM의 가비지 컬렉터가 객체 m에 finalize
문서 (GH_Document)를 나타내는 클래스가 있습니다. GH_Document에는 잠재적으로 위험한 작업을 수행하기 전에 호출되는 AutoSave 메서드가 있습니다. 이 방법은 원본 파일 옆에 자동 저장 파일을 만들거나 덮어 씁니다. GH_Document에는 자동 저장 기능으로 만든 모든 파일을 디스크에서 제거하는 DestroyAutoSaveFiles(
소멸자와 클래스의 Finalize 메서드 사이에 어떤 차이가 있습니까? 최근에 Visual Studio 2008에서는 Finalize 메서드와 동의어 인 소멸자가 고려됩니다. 즉, Visual Studio에서는 클래스에서 두 메서드를 동시에 정의 할 수 없습니다. 예를 들어 , 다음의 코드 : class TestFinalize
{
~TestFin
호기심에서 벗어나 System.Object 클래스의 구현을 검사하기 위해 mscorlib.dll을 디스 어셈블했습니다. 나는 이상한 것을 발견했습니다. 1).
public class Object {
...
protected override void Finalize(){}
...
}
어떻게 기본 클래스에 재정의 된 메소드가 있습니까? 2