Java基础-类的继承.ppt_第1页
Java基础-类的继承.ppt_第2页
Java基础-类的继承.ppt_第3页
Java基础-类的继承.ppt_第4页
Java基础-类的继承.ppt_第5页
已阅读5页,还剩17页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、1、,Java基础-类的继承,From:费秀伟 Email: Date:2011-08-15,2/21,Contents,3/21,1.什么是继承?-鸟类的继承图,嘴扁,颈长,趾间有蹼,善游泳,野鸭会飞,4/21,1.什么是继承?-Java继承,Java继承是使用已存在的类的定义作为基础建立新类的技术,新类的定义可以增加新的数据或新的功能,也可以用父类的功能,但不能选择性地继承父类。,子类 SubClass,继承,Java不支持多继承,父(超)类 SuperClass,继承,Object类是Java中所有类的父类,也就是说Java中的类都直接或间接由Object类派生而来。,5/21,1.什么

2、是继承?-例子,继承关系,6/21,1.什么是继承?-继承的分类,单继承, in Java,多继承, in C+,单继承:一个子类最多只能继承一个父类,多继承:一个子类可以继承多个父类,Java中只支持单继承, 而接口支持多继承, Java多继承的方式是采用 接口的方式来间接实现的,7/21,2.继承的特征-传递,继承关系是传递的。 若类C继承类B,类B继承类A,则类C既有从类B那里继承下来的属性与方法,也有从类A那里继承下来的属性与方法,还可以有自己新定义的属性和方法。,嘴扁,颈长,趾间有蹼,善游泳,8/21,2.继承的特征简化、复用,继承简化了人们对事物的认识和描述,能清晰体现相关类间的层

3、次结构关系。 继承提供了软件复用功能。若类B继承类A,那么建立类B时只需要再描述与基类(类A)不同的少量特征(数据成员和成员方法)即可。这种做法能减小代码和数据的冗余度,大大增加程序的重用性,9/21,2.继承的特征易于维护,继承通过增强一致性来减少模块间的接口和界面,大大增加了程序的易维护性。,唉!没有鸭蛋吃了,唉!没有鸭蛋吃了,唉!没有鸭蛋吃了,唉!没有鸭蛋吃了,唉!没有鸭蛋吃了,唉!没有鸭蛋吃了,10/21,3.如何使用继承-继承的规则,子类继承那些被声明为public 或protected的父类成员 只有子类与父类在同一个包中时,子类才能继承那些无访问修饰符修饰的父类成员 如果子类声明

4、了一个与父类中的成员同名的成员,则子类不能继承父类中的该同名成员 子类不能继承被修饰为private的父类成员,11/21,3.如何使用继承-继承的语法,extends关键字用于继承类。 声明一个继承父类的类的通常形式如下,class 子类名 extends 父类名 /类体 ,没有extends,默认父类为Object 只能有一个父类,即单继承,12/21,3.如何使用继承示例演示,13/21,3.如何使用继承-继承的多态,继承的多态性的定义: -通过覆盖父类的方法来实现,在运行时根据父类类型的引用指向的具体对象,来调用相应的方法。 多态性的好处: -它可以根据在运行的时候,根据引用指向不同对

5、象,来调用不同对象的方法。,14/21,3.如何使用继承生活中的多态,老爸:年龄38 吃糖 (大白兔),孩子:年龄12 吃糖 (金丝猴),孩子挑剔嫌糖不好吃,老爸就去吃了,老爸吃的是金丝猴,但是年龄依旧是38。 Father f= new Sun();,继承,15/21,3.如何使用继承多态的示例,子类run()覆盖了父类run(),16/21,3.如何使用继承-方法覆盖(override),方法覆盖是Java实现多态性机制的一种方式。 在类层次结构中,如果子类中的一个方法与父类中的方法有相同的方法名并具有相同数量和类型的参数列表,这种情况称为方法覆盖。 当一个覆盖方法通过父类引用被调用,Ja

6、va根据当前被引用对象的类型来决定执行哪个版本的方法。 可以通过super关键字调用直属父类中被覆盖的方法版本。,17/21,3.如何使用继承-super关键字,super关键字用来解决如何直接访问或初始化从父类继承来的属性。 super有两种通用形式:调用父类的构造函数、用来访问被子类的成员覆盖的父类成员。 super()必须是在子类构造函数中的第一个执行语句。,18/21,3.如何使用继承-this与super,如果子类声明了一个与父类的成员变量同名的成员变量,则称父类的该成员变量被隐藏。 如果子类声明了一个与父类的成员方法同名的成员方法,则称父类的该成员方法被重写(方法覆盖overrid

7、e)。 关键字this 和super分别用来指明子类和父类中同名的成员变量或成员方法。,输出: 4 4,19/21,3.如何使用继承-this & super 的使用,20/21,4.课堂总结,继承是面向对象编程技术的一块基石,它允许创建分等级层次的类。 只要子类与父类在同一个包中时,子类才能继承那些无访问修饰符修饰的父类成员 extends关键字用于继承类 super关键字用来解决如何直接访问或初始化从父类继承来的属性。 关键字this 和super分别用来指明子类和父类中同名的成员变量或成员方法,21/21,作业,查找资料,汇总多态性的好处,举例说明多态的优点 写一个动物、鱼类、鲤鱼的继承关系,可参考课件中代码,要求体现变量的隐藏、方法的重写、多态,22、,Thank You !,作业完成后mailTo : 作业后,对本节课内容的理解程度 A:

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论