- 1、本文档共17页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
面向对象程序设计(Java) ----Java多态性 深圳职业技术学院 主讲教师:袁梅冷 2008-04-25 电信学院---软件工程系 本单元教学内容 Java的单继承体系 继承结构中对象间的类型转换 动态多态性 内容回顾 1。什么情况下必须给子类添加构造器方法? 2。子类构造器方法的一般形式是怎样的? 3。什么是方法的覆盖(或称重写)? Java的单继承结构 每个类最多只能有一个父类,只支持单继承; Object类是Java的终极超类,所有类都是Object类的直接或间接子类。 子类继承沿继承路径向上的所有父类的有关属性和方法。 了解Object类 查看Object类的构成 试一试: 重写Object类中的toString()方法。 判断下面命题的对错 1.小轿车是车 2. 货车是车 3.车是小轿车 4.小轿车是货车 分析 子类是父类的一种特殊形式,可以描述为子类是父类的一种。 对象造型 上溯造型:自动进行 Vehicle vehicle=new Truck(……); 下溯造型: Vehicle vehicle=new Truck(……); Truck truck=(Truck)vehicle; 运行下面测试程序,观察结果 class Test{ public static void main(String args[]){ Vehicle v1=new Bus(大巴车,奔驰,123,30); v1.setComment(不错); v1.printInfo(); } } 问题:调用的是父类的printInfo()方法,还是子类中的printInfo()方法? 试一试 编辑并运行例3-6程序 问题 vehicle.printInfo();语句调用的是父类中的方法还是子类Bus中的方法? 汽车管理系统中的VehicleData类 分析VehicleData类 1.怎样保存汽车信息? 2.如何添加一个新的汽车信息? 3.如何输出汽车信息? 改写VehicleData类 1.添加车信息方法的改写; 2.输出车信息方法的改写; 使用VehicleData类 编写VehicleData类的测试程序, 创建对象如下: 小轿车,宝马,72,评价为:“很好” 大巴车,奔驰,130,评价为:“不错” 货车,吉瑞,45,评价为:“一般” 将以上对象都加入到VehicleData中的车链表中 输出车信息 运行时多太性 思考 1.三次调用addVehicle方法时分别传递的是什么参数? 2.各种车对象信息的输出分别调用的是哪个类中的方法? 运行时多态性 同一种方法的调用形式,在运行过程中表现出多种形态的特点。 实现运行时多态的条件 实现运行时多态技术的条件: 有一个继承(或实现接口的)层次关系; 在子类中重写父类的(实现接口的)方法; 通过父类的引用对子类对象进行调用; 试一试 1、编程实现图中所示的继承结构,其中Person类包含: 两个属性:分别用于存放人的姓名和国籍; 一个构造器方法,用于初始话对象; 一个eat()方法,用于返回信息“人吃饭” 2、完成Person各子类的编写。各子类都重写了Person类中的eat()方法,各子类的eat()方法返回的信息分别为: 中国人:“用筷子吃饭” 美国人:“用刀叉吃饭” 印度人:“用手抓饭吃” 3、编写测试程序,创建三个对象如下: 中国人,张三 美国人,John 印度人,拉拉 要求输出此三人的相关信息,格式如:“中国人张三用筷子吃饭” 实战演习 编写Employee类、Manager类以及TemporaryEmployee类的测试程序。 (1)创建一个长度为3的Employee类型的对象数组,数组元素分别为Employee对象、Manager对象和TemporaryEmployee对象; (2)为所有雇员涨一次工资,涨幅为10%; (3)输出所有雇员的信息; 深圳职业技术学院 2008-04-25 * * * *
文档评论(0)