- 1、本文档共27页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
* 析构函数 析构函数(destructor)用于实现销毁类的实例所需的操作,如释放对象占用的非托管资源(例如:打开的文件、网络连接等) 析构函数声明的基本形式如下: ~类名() { 析构函数方法体 }[;] * 析构函数 析构函数具有下列特征: 析构函数的名称由类名前面加上“~”字符构成 析构函数既没有修饰符,没有返回值类型(甚至也不能使用void),也没有参数 无法继承或重载析构函数,一个类只能有一个析构函数 不能显式调用析构函数 可以认为析构函数是构造函数的相反操作 析构函数隐式地调用对象基类的Finalize(终结)方法,即对继承链递归调用 Finalize 方法。故不应使用空析构函数 * 构造函数 小结 方法的重载 类的继承 基本内容 * 继承 将公共的成员放到一个类中 保留自己特有的成员 保留自己特有的成员 父类 子类 Manager类继承Employee类 Employee类派生Manager类 子类又叫派生类 父类又叫基类 派生类的声明 * [属性] [类修饰符] class 派生类名[:基类名] { 类体 } 面向对象编程有两种类型的继承: 实现继承:一个类派生于一个基类型,可以继承基类的实现 接口继承:一个类型只继承了函数的签名,没有继承任何实现代码 在不同的类型有不同的实现时,定义通用的实现代码是没有意义,应该采用接口继承 C#不支持多重实现继承,支持派生于多个接口 类可以派生于另一个类,可以派生任意多个接口 结构自动派生于System.ValueType,结构不支持继承,可以派生任意多个接口 继承父类非Private成员,但不包括构造函数 * class Employee { private string name; public int Age { get; set; } private double salary = 2000; public double Salary { get { return salary; } set { salary = value; } } public Employee(string name) { this.name = name; } … } class Manager : Employee { private double bonus; public double Bonus { get { return bonus; } set { bonus = value; } } } 1、提取后的Manager类 只有经理特有的属性 2、创建一个经理对象 Manager zhang = new Manager(); zhang.Name = 张靓; zhang.Age = 21; 公共属性可以访问 继承 为了限制外界的访问,可以将成员限定为Protected 避免过度使用继承 * 在派生类中调用基类构造函数 执行顺序 因为派生类要使用基类,所以基类实例化必须在派生类实例化之前进行。 默认调用基类无参构造函数 调用特定的构造函数 如果想要调用基类的非默认构造函数,那么必须使用 base 关键字。 * 访问关键字this的用法 this关键字引用类的当前实例: 静态成员方法中不能使用this关键字 this关键字只能在实例构造函数、实例方法或实例访问器中使用 声明索引器 将对象实例作为参数传递 引用同一类的其他构造函数 * 访问关键字base的用法 base关键字用于从派生类中访问基类的成员: 指定创建派生类实例时应调用的基类构造函数 调用基类上已被其他方法重写的方法 不能从静态方法中使用 base 关键字 * 继承 练习 编写一个通用的人员类(Person),该类具有姓名(Name)、年龄(Age)属性。对Person进行继承得到一个学生类(Student),该类有年级(Grade)属性,要求对该类构造函数进行重载,输出Student类的特定对象进行即可 * * * * * * * * * * * * * * * * * * * * 第3章 C#面向对象编程 * 本节目标 理解面向对象的基本概念 理解类和对象的区别和联系 掌握方法的重载、不同的方法参数 掌握构造函数的声明及使用 了解静态构造函数的声明和使用 掌握类的继承 掌握this和base的用法 * 构造函数 小结 方法的重载 类的继承 基
您可能关注的文档
- 126KV组合电器货物需求一览表及技术规格研讨.doc
- 丰富的肉菜做法大全预案.doc
- 第3课水资源答题.ppt
- 德国精美英语详细答题.ppt
- 驾校教练员规范化教学预案.doc
- 2015年高校教师岗前培训高等教育学研讨.ppt
- 2015年高中地理农业高考题(上课用)研讨.ppt
- 2015年高中化学竞赛初赛模拟12研讨.doc
- 第3章(B)地址答题.ppt
- 公园弱电系统技术方案预案.doc
- 10《那一年,面包飘香》教案.docx
- 13 花钟 教学设计-2023-2024学年三年级下册语文统编版.docx
- 2024-2025学年中职学校心理健康教育与霸凌预防的设计.docx
- 2024-2025学年中职生反思与行动的反霸凌教学设计.docx
- 2023-2024学年人教版小学数学一年级上册5.docx
- 4.1.1 线段、射线、直线 教学设计 2024-2025学年北师大版七年级数学上册.docx
- 川教版(2024)三年级上册 2.2在线导航选路线 教案.docx
- Unit 8 Dolls (教学设计)-2024-2025学年译林版(三起)英语四年级上册.docx
- 高一上学期体育与健康人教版 “贪吃蛇”耐久跑 教案.docx
- 第1课时 亿以内数的认识(教学设计)-2024-2025学年四年级上册数学人教版.docx
文档评论(0)