析构函数


来源海口家教吧 日期:2011年01月09日 点击:488次 分类初中学习 上一篇面向对象中的对象 下一篇课题选择

创建实例时,系统会为实例分配空间,当实例用完以后,就要回收这些分配出去的空间,所以释放对象时要用析构函数。析构方法是用符号“~”开始的并与类同名的方法,该方法不带参数,没有返回类型也不带修饰符。
一个类的析构方法较多只有一个,如果没有提供析构方法,系统会自动生成一个。
析构方法不能由程序显式调用,而由系统自动进行。
在.net中,不必太关注内存管理,因为.net框架垃圾回收器会自动地管理对象的内存分配和释放。
设计一个Rect类,包含width和height两个数据成员,通过带参数的构造函数获取width和height的值,该类同时包含一个getArea()方法,可以根据width和height的值计算该矩形的面积。
通过主函数输入相应的值,调用类中求面积的方法,输出该矩形的面积 。

C#给我们提供了一种更理想的方法,就是属性,通过属性让用户像访问公有成员字段一样来访问类的私有成员字段。属性机制中有两个属性访问函数get和set,即属性的读写是由get和set来实现的。如果没有set方法则表示属性是只读的,如果没有get方法则表示属性是只写的。
在类中定义属性的格式:
属性可以实现只读或只写;属性还可以返回一些经过计算或处理过的数据;属性的实现实际上是方法的实现,可以具有方法的一些特点。
在C#中,属性和域的选择一般采取以下原则:
1、若在类的内部记录事物的状态信息,用域变量;
2、域变量一般用private修饰,以防止对外使用;
3、对外公布事物的状态信息,则使用属性;
4、属性一般与一个域变量或几个域变量有关。

组织代码的较基本的单元就是类。把每个类分别写在一个文件中,可以更好地组织代码的结构。
命名空间是用来组织类的。通常可以把相关联的类放在一个命名空间中,进行有效的管理。
在较大的编程项目中,声明自己的命名空间可以帮助控制类名称和方法名称的范围。