在C#中,构造函数和析构函数是用于对象的初始化和清理的特殊成员方法。
class Person
{
private string name;
private int age;
// 默认构造函数
public Person()
{
name = "Unknown";
age = 0;
}
// 带参数的构造函数
public Person(string name, int age)
{
this.name = name;
this.age = age;
}
}
class MyClass
{
~MyClass()
{
// 执行清理操作
}
}
Person person1 = new Person(); // 调用默认构造函数
Person person2 = new Person("John", 25); // 调用带参数的构造函数
MyClass obj = new MyClass();
obj = null; // 设置对象为 null,使其不再被引用
// 在适当的时候,垃圾回收器将自动调用析构函数
class FileHandler
{
private IntPtr fileHandle;
public FileHandler(string filePath)
{
fileHandle = OpenFile(filePath);
}
~FileHandler()
{
CloseFile(fileHandle);
}
private IntPtr OpenFile(string filePath)
{
// 打开文件,返回文件句柄
}
private void CloseFile(IntPtr handle)
{
// 关闭文件
}
}