在 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(); } }
广告