![Java向对象程序设计多态性_第1页](http://file2.renrendoc.com/fileroot_temp3/2021-11/7/070fbf36-e944-42f9-b9d9-78048da5feff/070fbf36-e944-42f9-b9d9-78048da5feff1.gif)
![Java向对象程序设计多态性_第2页](http://file2.renrendoc.com/fileroot_temp3/2021-11/7/070fbf36-e944-42f9-b9d9-78048da5feff/070fbf36-e944-42f9-b9d9-78048da5feff2.gif)
![Java向对象程序设计多态性_第3页](http://file2.renrendoc.com/fileroot_temp3/2021-11/7/070fbf36-e944-42f9-b9d9-78048da5feff/070fbf36-e944-42f9-b9d9-78048da5feff3.gif)
![Java向对象程序设计多态性_第4页](http://file2.renrendoc.com/fileroot_temp3/2021-11/7/070fbf36-e944-42f9-b9d9-78048da5feff/070fbf36-e944-42f9-b9d9-78048da5feff4.gif)
![Java向对象程序设计多态性_第5页](http://file2.renrendoc.com/fileroot_temp3/2021-11/7/070fbf36-e944-42f9-b9d9-78048da5feff/070fbf36-e944-42f9-b9d9-78048da5feff5.gif)
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、深圳职业技术学院深圳职业技术学院主讲教师:袁梅冷主讲教师:袁梅冷 2008-04-25电信学院电信学院-软件工程系软件工程系本单元教学内容 javajava的单继承体系的单继承体系 继承结构中对象间的类型转换继承结构中对象间的类型转换 动态多态性动态多态性内容回顾 1。什么情况下必须给子类添加构造器方法?。什么情况下必须给子类添加构造器方法? 2。子类构造器方法的一般形式是怎样的?。子类构造器方法的一般形式是怎样的? 3。什么是方法的覆盖(或称重写)?。什么是方法的覆盖(或称重写)?java的单继承结构 每个类最多只能有一个父类,只支持单继承;每个类最多只能有一个父类,只支持单继承; obje
2、ctobject类是类是javajava的终极超类,所有类都是的终极超类,所有类都是objectobject类的直接或间接子类。类的直接或间接子类。 子类继承沿继承路径向上的所有父类的有关属子类继承沿继承路径向上的所有父类的有关属性和方法。性和方法。了解object类 查看查看object类的构成类的构成 试一试:试一试: 重写重写object类中的类中的tostring()方法。()方法。判断下面命题的对错 1.小轿车是车小轿车是车 2. 货车是车货车是车 3.车是小轿车车是小轿车 4.小轿车是货车小轿车是货车 分析分析 子类是父类的一种特殊形式,可以描述为子类是父类的一种。对象造型上溯造型
3、:自动进行上溯造型:自动进行 vehicle vehicle=new truck(vehicle vehicle=new truck() );下溯造型:下溯造型: vehicle vehicle=new truck(vehicle vehicle=new truck();); truck truck=(truck)vehicle;truck truck=(truck)vehicle;运行下面测试程序,观察结果class testpublic static void main(string args)vehicle v1=new bus(大巴车,奔驰,123,30);v1.setcomment(
4、不错);v1.printinfo();问题:问题:调用的是父类的printinfo()方法,还是子类中的printinfo()方法?试一试 编辑并运行例编辑并运行例3-6程序程序 问题问题 vehicle.printinfo();语句调用的是父类中的方法还;语句调用的是父类中的方法还是子类是子类bus中的方法?中的方法?汽车管理系统中的vehicledata类 分析分析vehicledata类类 1.怎样保存汽车信息?怎样保存汽车信息? 2.如何添加一个新的汽车信息?如何添加一个新的汽车信息? 3.如何输出汽车信息?如何输出汽车信息?改写vehicledata类 1.添加车信息方法的改写;添加
5、车信息方法的改写; 2.输出车信息方法的改写;输出车信息方法的改写;使用vehicledata类 编写编写vehicledata类的测试程序,类的测试程序, 创建对象如下:创建对象如下: 小轿车,宝马,72,评价为:“很好” 大巴车,奔驰,130,评价为:“不错” 货车,吉瑞,45,评价为:“一般” 将以上对象都加入到将以上对象都加入到vehicledata中的车链表中中的车链表中 输出车信息输出车信息运行时多太性 思考思考 1.三次调用addvehicle方法时分别传递的是什么参数? 2.各种车对象信息的输出分别调用的是哪个类中的方法? 运行时多态性运行时多态性同一种方法的调用形式,在运行过
6、程中表现出多种形态的特点。实现运行时多态的条件 实现运行时多态技术的条件:实现运行时多态技术的条件:有一个继承(或实现接口的)层次关系;有一个继承(或实现接口的)层次关系;在子类中重写父类的(实现接口的)方法;在子类中重写父类的(实现接口的)方法;通过父类的引用对子类对象进行调用;通过父类的引用对子类对象进行调用;试一试1、编程实现图中所示的继承结构,其中、编程实现图中所示的继承结构,其中person类包含:类包含:两个属性:分别用于存放人的姓名和国籍;两个属性:分别用于存放人的姓名和国籍;一个构造器方法,用于初始话对象;一个构造器方法,用于初始话对象;一个一个eat()方法,用于返回信息()
7、方法,用于返回信息“人吃饭人吃饭”2、完成、完成person各子类的编写。各子类都重写了各子类的编写。各子类都重写了person类中类中的的eat()方法,各子类的()方法,各子类的eat()方法返回的信息分别为:()方法返回的信息分别为:中国人:中国人:“用筷子吃饭用筷子吃饭”美国人:美国人:“用刀叉吃饭用刀叉吃饭”印度人:印度人:“用手抓饭吃用手抓饭吃”3、编写测试程序,创建三个对象如下:、编写测试程序,创建三个对象如下:中国人,张三中国人,张三美国人,美国人,john印度人,拉拉印度人,拉拉要求输出此三人的相关信息,格式如:要求输出此三人的相关信息,格式如:“中国人张三用筷子吃中国人张三用筷子吃饭饭”实战演习 编写编写employee类、类、manager类以及类以及temporaryemployee类的测试程序。类的测试程序。 (1)创建一个
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年金头黑色密胺筷项目可行性研究报告
- 2025至2031年中国长方形木炉座行业投资前景及策略咨询研究报告
- 2025至2031年中国粉防己行业投资前景及策略咨询研究报告
- 2025年熔融法硬脂酸钡项目可行性研究报告
- 2025年引锭帽项目可行性研究报告
- 2025年四位密码钢缆锁项目可行性研究报告
- 2025至2030年中国调速秤数据监测研究报告
- 2025至2030年中国脲醛胶数据监测研究报告
- 2025至2030年智能型老代步车项目投资价值分析报告
- 2025至2030年异形铝天花板项目投资价值分析报告
- 2025年山东商务职业学院高职单招数学历年(2016-2024)频考点试题含答案解析
- 2025年个人合法二手车买卖合同(4篇)
- 2025年内蒙古自治区包头市中考试卷数学模拟卷(二)
- 外研版(三起)小学英语三年级下册Unit 1 Animal friends Get ready start up 课件
- 泥水盾构简介
- 简单娱乐yy频道设计模板
- 防止机组非计划停运措施(锅炉专业)
- 最常用汉字个
- 变电站综合自动化系统课程自学指导
- 消防演练记录表(共3页)
- 深圳宝安国际机场T3航站楼集中空调冷源方案设计
评论
0/150
提交评论