学习C#有一段时间了,但是在学习的过程中,经常遇到一些不懂得地方,还有在学习C#的过程中,还有时候能让自己不由自主的想起VB来,这两天遇到了VB中没有的两个函数,我觉的它们很重要,就总结了一下。
谈到这两个函数,不由自主的就与对象的生命周期联系起来了,当我们使用对象时,分为三个步骤,第一,构建阶段,第二,使用阶段,第三,释放阶段。这三个步骤中的第一步和第三步就用到了我刚才所说的构造函数与析构函数,我先说一下构造函数与析构函数在C#中的作用吧!
构造阶段:对象最初进行实例化的时期。这个初始化过程称为构造阶段,由构造函数完成。
析构阶段:在删除一个对象时,常常需要执行一些清理工作,例如,释放内存,这由析构函数完成。
1、构造函数
在构造阶段我们经常使用的就是构造函数,构造函数与类同名,没有返回值,在创建对象时执行,他的作用是在初始化对象的过程中,对需要初始化对象存储数据。构造函数就是用于初始化数据的函数。我的理解就是给初始化的对象赋值。
构造函数中还有一个静态构造函数,静态构造函数的作用是:在使用类中的静态成员时,需要预先初始化这些成员。在声明时,可以给静态成员提供一个初始值,但有时需要执行更复杂的初始化,或者在赋值、执行静态方法之前执行某些操作。
2、析构函数
对象使用完成之后,有时候我们需要清理它在计算机中所占的内存,这时候我们就用到了析构函数。
析构函数在程序结束时执行,通常在类前面加一个波浪线,一般情况下,.NETFramework使用析构函数清理对象时,不需要提供析构函数的代码,而是由默认的析构函数自动执行操作。但是,如果在删除对象实例前,需要完成一些重要的操作,就应提供特定的析构函数。例如,如果变量超出了范围,代码就不能访问它, 但该变量仍存在于计算机内存的某个地方。只有在.NET运行程序执行其垃极回收,进行清理时,该实例才被彻底删除。
3、总结
构建函数与析构函数的使用时间正好相反,构建函数时在创建对象的时候执行,析构函数是在程序结束的时候执行。析构函数与构建函数都没有返回值,构建函数可以带参数,但是析构函数不能够带参数。