面向对象程序设计--第3章.ppt

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

*/12 2.3.3 解决方案 2、编制登录界面 在登录菜单中,除了计算机显示的提示信息以外,还需要用户从键盘输入登录的用户名及密码。从键盘输入数据应采用Console. ReadLine ();或者Console. Read ();具体代码如下: 第1章目录 */12 2.3.3 解决方案 2、编制登录界面 第1章目录 */12 3.3.3 解决方案 3、在创建类的对象时调用构造方法进行对象构造,修改CMainMenu中的LoginDisplay方法 第1章目录 */12 3.3.3 解决方案 3、在创建类的对象时调用构造方法进行对象构造,修改CMainMenu中的LoginDisplay方法,进行Cashier类对象的调用: 4、在Cashier类中添加析构方法 ~Cashier() { Console.WriteLine(析构方法被调用了); } 6、运行显示结果 : 第1章目录 */12 3.3.3 解决方案 第1章目录 */12 3.2.4知识总结 构造方法和析构方法是系统自动调用的两个方法,前者用于初始化类中的数据成员,后者用于释放类中数据成员所占的资源。 1、构造方法 构造方法有实例构造方法和静态构造方法两种类型。 实例构造方法负责初始化类中的实例变量,其只有在用户使用new关键字为对象分配内存时才被调用。 与其他的成员方法不同,构造方法不需要用户来调用,而是在创建类的对象时自动调用的方法,一般用来初始化对象.类的任何对象都是通过new操作符调用类构造方法来创建的。构造方法是必须的,如果没有定义构造方法 ,系统将提供一个默认的构造方法。 第1章目录 */12 3.2.4 知识总结 静态构造方法是C#的一个新特性,在创建类的实例之前调用的构造函数,一般在初始化一些静态变量的时候才需要用到。这个构造方法是属于类的,而不是属于类的对象的。也就是说使用静态构造方法是通过使用类名来访问,而不是使用对象名来访问的,并且这个构造方法只会被执行一次。 在使用静态构造方法的时候应该注意: 静态构造方法既没有访问修饰符,也没有参数,因为是编译系统调用的,所以用public和private等修饰符都没有意义了。 在创建第一个类实例或任何静态成员被引用,编译系统将自动调用静态构造函数来初始化类,也就是说无法直接调用构造函数,也就无法控制什么时候执行静态构造函数了。 一个类只能有一个静态构造函数。 无参数的构造函数可以与静态构造函数共存,尽管参数列表相同,但一个属于类,一个属于对象,所以不会冲突。 静态构造函数最多只运行一次。 静态构造函数不可以被继承。 第1章目录 */12 3.2.4 知识总结 2、析构函数 当针对一个对象的最后一个引用消失时,该对象就等待成为无用单元而被收集。无用单元收集程序释放无用对象占据的内存。无用对象调用析构函数来释放所占内存。 析构函数是无用单元收集程序删除对象时调用的方法。使用析构函数可以在代码中执行清除操作。它同样和类名具有一样的名称,不过在名称前使用波浪线“~”符号。析构函数是共有的,而且它没有参数,因此一个类只需要一个析构函数。 第1章目录 */12 3 .2.5应用实践 在商品类中添加构造函数,进行商品类成员变量的初始化操作,代码如下所示。在商品类中添加构造函数,进行商品类成员变量的初始化操作 第1章目录 */12 任务3.3 创建静态成员 2 1 知识目标 能力目标 静态变量 静态函数 运用静态成员 */12 3.3.1情境描述 Jack理解了类的创建及对象的生命期之后, 他需要完成单个商品的收银操作,为了完成收银功能,他需要完成以下任务。 1)理解静态成员 2)创建静态成员 3)访问静态和非静态成员 4)编译及运行C#程序 第1章目录 */12 3.3.2问题分析 收银过程包含记录商品信息及商品数量、商品的金额等信息,同时提供收银过程中的金额计算等功能。 收银员收银过程中,每笔收银记录均需要记录收银员的信息,要实现每笔记录均记录下登录的收银员信息,他需要将登录的收银员信息的生命期延长。 C#中变量分三类:分别是静态变量、成员变量及方法中具备变量。静态变量的生命期最长,作用范围广,能够解决收银过程中的收银员问题。 第1章目录 */12 3.3.3 解决方案 1、打开Visual Studio2010,在任务3.2的基础上进行创建项目或者打开任务3.2案例。 2、新建类CashRegister类。 3、在CashRegister类中添加成员变量及成员方法, 4、修改收银员类,利用静态成员变量保存登录成功的收银员信息 5、在收银员登录界面处修改代码,当收银员登录成功之后,保存当前登录员信息到静态变量中。

文档评论(0)

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

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

1亿VIP精品文档

相关文档