第6章构造函数和析构函数.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第6章构造函数和析构函数.ppt

在本章,你将学到: 实现构造函数 实现析构函数 识别对象生命周期 重点 实现构造函数 实现析构函数 识别对象生命周期 难点 实现构造函数 识别对象生命周期 构造函数是当你创建一个类的实例的时候被调用的一种特殊的方法。 构造函数被用于初始化类成员。 构造函数的名字与包含它的类的名字一样。 构造函数是在创建类的对象时被执行的一个特殊的成员函数。 有两种类型的构造函数: 实例构造函数:实例构造函数在类的实例创建的时候被调用。这些构造函数被用于初始化类数据成员。 using System; namespace CalculateNumber{ class Calculate { int number1; Calculate() { number1=10; } static void Main(string[] args) { Calculate Cal1 = new Calculate(); Calculate Cal2 = new Calculate(); } } } 静态构造函数:静态构造器被用于初始化类的静态变量。这些变量使用static关键字创建,他们存储的值可以被类的所有实例共享。 using System; namespace CalculateNumber{ class Calculate { static int number1; static Calculate() { number1 = 10; number1++; } static void Main(string[] args) { Calculate Cal1 = new Calculate(); Calculate Cal2 = new Calculate(); } } } 构造函数可以被修改接受在运行时用户提供的值。 对象可以使用默认带有程序中硬编码的值的构造函数来初始化。但是,可能需要来自用户提供的值来初始化变量。 程序代码: using System; namespace CalculateNumber{ class Calculate { int number1; Calculate(int x ) { number1 =x; number1++; } static void Main(string[] args) { Calculate Cal1 = new Calculate(10); Console.WriteLine(Cal1.number1); Calculate Cal2 = new Calculate(12); Console.WriteLine(Cal1.number1); } } } 析构函数是被用于从内存释放类实例是使用的特殊方法。 类仅有一个析构函数。 析构函数的目的是完成必需的内存清理动作。 .NET框架自动运行析构函数来在内存中销毁对象。 析构函数与类的名字一样但是有一个前缀~,它是一个鼻化音标记。 析构函数不能被继承或重载。 垃圾收集是一个自动是否不使用的内存对象的过程。 调用析构函数的决定是由一个特殊的C#程序被称为垃圾收集器来完成的。 垃圾收集的过程自动发生。它确保: 对象被销毁 仅不使用的对象被销毁 C#提供了特殊的方法用来释放内存中类的实例: Finalize():它是一个特殊的方法,它被它所属的类调用或从派生的类调用。Finalize()析构函数在到对象的最后一个引用从内存中释放的时候被调用。 Dispose(): Dispose()方法被调用来释放资源,例如数据库连接,一旦对象使用的这样的资源不在被使用的时候。不像Finalize()析构函数,Dispose()方法不是被自动调用的,你必须在对象不在需要的时候,明确的从客户程序中调用它。IDisposable接口包含Dispose()方法。因此,为了调用Dispose()方法,类必须实现IDisposable接口。 1、开发一个软件应用程序,该程序要有一个父类和一个子类,并在两个类中定义构造函数和析构

文档评论(0)

youbika + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档