- 1、本文档共182页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
主讲教师: 本课学时: 联系方式: 第五章 深入了解C#面向对象编程??? CONTENT 本章学习目标: 理解C#的继承性和多态性 掌握操作符重载的方法 熟练掌握用接口的定义与使用 熟练掌握委托的使用 初步掌握事件的机制 熟练掌握索引器的定义与使用 理解异常处理和组件 5. 1 C#继承机制? 在这个世界上,人可以分多种,但是却有很多共同点。例如人一般都有名字,身份证,父母。但是,一个成功的人除了有名字,身份证,父母外,还有辉煌的事业。也就是他是普通人,也是成功的人。这类似与继承的原理。 5. 1 C#继承机制? 继承是面向对象技术最有特色、最重要、也是与传统编程方法最不相同的。 继承表示了实体间的一种层次关系。 基类/父类,派生类/子类 派生类可以继承基类的特征和能力,如属性和方法。 派生类还可以添加新的特性或者是修改已有的特性以满足特定的要求,但不能删除基类的成员。 一个父类可以有多个子类。父类是所有子类公共特征的集合,子类则是父类的特殊化。 C#中每个子类只能有一个基类,即不允许多重继承 继承的好处:实现了代码重用 派生类可以继承基类中除构造函数和析构函数外的所有可访问的成员 访问修饰符protected的作用 子类可以访问,其他的类都不可以访问 继承是可传递的 P108 基类与派生类之间的转换 基类与派生类间的转换 隐式转换 派生类?基类 显式转换 基类?派生类(有条件) 继承 继承 继承 C# 中的类 输出结果: 输出结果: 调用 base 构造函数 输出结果: 输出结果: 5. 2 C#多态机制 课堂上,老师给出很多个函数,他们的作用都是比较大小。这些函数的名称都相同,不同的的是参数的类型,个数和函数的返回值。过后,老师有些出一大堆数据,它们有整形,单精度,双精度等。而同学们要根据这些数据找出相应的函数,最终根据那个函数判断大小。这等同于多态的原理。 5. 2 C#多态机制 多态(Polymorphism ):多态的意思是事物具有不同形式的能力。例如,对不同的实例,某个操作可能会有不同的行为。这个行为依赖于所要操作数据的类型。 多态机制使具有不同内部结构的对象可以共享相同的外部接口。 如何实现多态 C#中有两种实现多态的方法 通过继承实现多态 通过重载实现多态 通过继承,可以用两类方法来实现多态 重写基类的虚方法(虚方法重写) 重写基类的抽象方法 对基类虚方法的重写 基类和派生类中定义完全相同的两个方法 方法名相同 对应的参数相同 返回值相同 语法规定 基类的方法必须用virtual修饰符定义为虚方法 派生类必须用override修饰符重新定义该方法 与非虚方法的比较 对基类虚方法的重写 输出的结果是 输出结果是: 方法的隐藏 派生类可以定义与基类具有相同签名的方法 new关键字 派生类定义与基类具有相同签名的方法时,需要使用new关键字,否则编译器将给出警告 方法的隐藏 当用派生类的对象访问同名的方法时 执行派生类的方法? 执行基类的方法? 基类与派生类的方法 基类与派生类方法之间的关系 方法的重写 class Vehicle { public virtual string Start() { return 交通工具启动; } } class Car : Vehicle { public override string Start() { return 汽车起步; } } class Plane : Vehicle { public override string Start() { return 飞机起飞; } } class Program { static void Main(string[] args) { Vehicle[] v=new Vehicle[3]; v[0] = new Vehicle(); v[1] = new Car(); v[2] = new Plane(); foreach (Vehicle ve in v) { Console.WriteLine(ve.Start()); } Console.ReadKey();
您可能关注的文档
- Visual Basic程序设计应用教程电子教案&源代码薛晓萍 第2章 第2章 Visual Basic语言基础.ppt
- Visual Basic程序设计应用教程电子教案&源代码薛晓萍 第3章 第3章 程序设计基本结构.ppt
- Visual Basic程序设计应用教程电子教案&源代码薛晓萍 第4章 第4章 常用内部控件.ppt
- Visual Basic程序设计应用教程电子教案&源代码薛晓萍 第5章 第5章 数组.ppt
- Visual Basic程序设计应用教程电子教案&源代码薛晓萍 第6章 第6章 过程.ppt
- Visual Basic程序设计应用教程电子教案&源代码薛晓萍 第7章 第7章 窗体界面设计.ppt
- Visual Basic程序设计应用教程电子教案&源代码薛晓萍 第8章 第8章 文件操作.ppt
- Visual Basic程序设计应用教程电子教案&源代码薛晓萍 第9章 第9章 程序设计基本结构.ppt
- Visual Basic程序设计应用教程电子教案&源代码薛晓萍 第9章 第9章 绘制图形.doc
- Visual Basic程序设计应用教程电子教案&源代码薛晓萍 第10章 第10章 数据库技术.ppt
- 2023咸阳职业技术学院招聘笔试真题参考答案详解.docx
- 2023四川化工职业技术学院招聘笔试真题及参考答案详解.docx
- 2023哈尔滨职业技术学院招聘笔试真题及参考答案详解.docx
- 2023商洛职业技术学院招聘笔试真题及答案详解1套.docx
- 2023呼伦贝尔职业技术学院招聘笔试真题参考答案详解.docx
- 2023南阳农业职业学院招聘笔试真题参考答案详解.docx
- 2023天津公安警官职业学院招聘笔试真题带答案详解.docx
- 2023年上海电机学院招聘笔试真题参考答案详解.docx
- 2023年四川艺术职业学院招聘笔试真题参考答案详解.docx
- 2023安徽体育运动职业技术学院招聘笔试真题及答案详解一套.docx
文档评论(0)