Computer >> 컴퓨터 >  >> 프로그램 작성 >> C#

C#의 한 클래스에 몇 개의 소멸자가 있을 수 있습니까?


C#에서 소멸자는 클래스의 특수 메서드이며 클래스 내부에서 개체 또는 클래스 인스턴스를 파괴하는 데 사용됩니다.

클래스 내부에는 소멸자가 하나만 있을 수 있습니다.

다음은 C#에서 소멸자의 속성입니다.

  • 소멸자는 매개변수를 사용하지 않습니다.

  • 소멸자는 물결표 기호(~)로 시작합니다.

  • 소멸자(~)는 구조체에서 정의할 수 없습니다.

  • 소멸자를 호출할 수 없습니다. 자동으로 호출됩니다.

  • 소멸자는 개체의 기본 클래스에서 암시적으로 Finalize를 호출합니다.

class Demo{
   ~Demo(){ //Finalizer
      // cleanup statements...
   }
}
class Program{
   static void Main(){
      Console.ReadLine();
   }
}

종료자는 개체의 기본 클래스에서 암시적으로 Finalize를 호출합니다. 따라서 종료자에 대한 호출은 암시적으로 다음 코드로 변환됩니다 -

protected override void Finalize(){
   try{
      // Cleanup statements...
   }
   finally{
      base.Finalize();
   }
}

프로그래머는 종료자가 호출되는 시기를 제어할 수 없습니다.

소멸자를 두 개 이상 선언하면 컴파일러에서 오류가 발생합니다.

'Demo'는 이미 '~Demo'라는 구성원을 정의합니다.

class Demo{
   ~Demo(){
   }
   ~Demo(){
   }
}
class Program{
   static void Main(){
      Console.ReadKey();
   }
}