C# 析构函数

类的析构函数是类的一个特殊成员方法 当一个对象被释放时执行

被释放: C#有垃圾回收机制 当某个数据没有被任意一个变量引用时 垃圾回收机制就会把这个对象当作垃圾给清理掉

析构函数(终结器): 当类的某个对象被当作垃圾回收机制回收时 这个函数就被触发

cs 复制代码
namespace _4.析构函数
{
    internal class Program
    {
        static void Main(string[] args)
        {
            Studen stu = new Studen() { Name = "张三"};
            Studen stu1 = new Studen() { Name = "李四" };
            stu = null;
            Studen stu3 = stu1;
            stu1 = null;
            //Console.WriteLine("请摁下任意按键 启动垃圾回收");
            //Console.ReadKey();
            //强制启动垃圾回收
            //一般不会频繁调用
            GC.Collect();
            //Console.ReadLine();

        }
    }

    class Studen
    {
        public string Name { get; set; }

        //析构函数
        //一个类只能有一个  没有参数 没有返回值
        ~Studen()
        {
            // 可以做一些释放工作
            Name = null;
            Console.WriteLine(Name + "释放了");
        }
    }
}
相关推荐
源分享13 天前
Java线程同步的多种实现方法(非常详细)
java·开发语言·jvm
JAVA96513 天前
JAVA面试-JVM篇 03-JVM运行时数据区哪些是线程私有的哪些是共享的
java·jvm·面试
伶俜6614 天前
鸿蒙原生应用实战(十八)ArkUI 记账本:SQLite 账单 + 图表统计 + 分类管理
jvm·sqlite·harmonyos
IronMurphy14 天前
多线程问!
java·jvm·spring
unique14 天前
AI Coding 采集方案探索
jvm·人工智能·oracle
cfm_291415 天前
JVM GC日志解析
jvm
不良使15 天前
鸿蒙PC迁移:使用Electron`logseq-master-ohos` 鸿蒙适配全记录
jvm·electron·harmonyos
cfm_291415 天前
JVM深度详解:Class常量池、运行时常量池、字符串常量池、包装类对象池
java·jvm
JAVA96515 天前
JAVA面试-JVM篇 02-G1垃圾收集器的工作原理是什么与CMS的区别
java·jvm·面试