新Visual C# 2008程序设计案例教程 电子教案 源代码 5.pptVIP

  • 1
  • 0
  • 约 183页
  • 2016-10-26 发布于广东
  • 举报

新Visual C# 2008程序设计案例教程 电子教案 源代码 5.ppt

主讲教师: 本课学时: 联系方式: 第五章 深入了解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();

您可能关注的文档

文档评论(0)

1亿VIP精品文档

相关文档