* 5. 根类Object 在Java 中,所有的类都是通过直接或间接地继承java.lang.Object类得到的,Object类是一切类的祖先,称为根类。 当定义类,而没有使用extends关键字时,表示所定义类的父类为Object类,这是Java中的一种特别约定。根类Object类的方法如clone()、equals(obj)、finalize()、getClass()、hashCode()、notify()、notifyAll()、toString()、wait()等,子类都可以通过继承,进行调用。 关于toString()方法,在任务六的类的定义中,通过重写,已经多次使用了该方法。 Java程序设计任务驱动式教程 任务九 子承父业 * 9.4.2 类的多态 1. 多态的概念 多态是指一个方法声明的多种实现状态,即在程序中同名的不同方法共存,调用者只需要使用同一个方法名,系统会根据不同情况,调用相应的方法,从而实现不同的功能。简而言之,多态性即“一个名字,多个方法”。例如,父类Vehicle中有如下方法: public void accelerate(){ …… } 在子类Bus中,也有accelerate()方法: public void accelerate(){ //方法重写 …… } 在程序中同名的不同方法共存,形成了多态。 2. 多态的意义 在面向对象程序设计中,多态是具有表现多种形态的能力的特征,有时需要利用方法的重名,提高程序的抽象度和简洁性,以及程序的可扩展性及可维护性。例如使用多态之后,当需要增加新的子类PoliceCar警车类时,无需更改父类Vehicle,代码得到了扩展,维护起来也方便。 Java程序设计任务驱动式教程 任务九 子承父业 * 3.多态的分类 多态分为静态多态和动态多态。静态多态指通过同一个类中的方法重载实现的多态,动态多态指通过类与类之间的方法重写实现的多态。方法重载参见8.4.4。方法重写参见本任务9.4.1 类的继承4.子类与父类的关系⑶ 子类中方法重写部分。 静态多态是编译时多态,指程序会根据参数的不同来调用相应的方法,具体调用哪个被重载的方法,由编译器在编译阶段静态决定。 动态多态是运行时多态,指在运行时根据调用该方法的实例的类型来决定调用哪个重写方法。 静态多态对程序运行更有效率,动态多态更具有灵活性。 4.多态的实现 多态通过给同一个方法定义几个版本来实现的。例如,现有三个类,Grandfather类是Father类的父类,Father类是Child类的父类。三个类的代码如下: Java程序设计任务驱动式教程 任务九 子承父业 * package com.task09; /** * Grandfather.java * 多态,本类作为Father的父类 */ public class Grandfather { int i; int j; /** * @param i * @param j */ public Grandfather(int i, int j) { this.i = i; this.j = j; } int smoke(){ System.out.println(Grandfather的方法smoke():); return i+j; } } Java程序设计任务驱动式教程 任务九 子承父业 * package com.task09; /** * Father.java * 多态,本类作为Grandfather的子类,本类作为Child的父类 */ public class Father extends Grandfather { /** * @param i * @param j */ public Father(int i, int j) { super(i, j); } int drink(){ System.out.println(Father的方法drink():); return 0; } } Java程序设计任务驱动式教程 任务九 子承父业 * package com.task09; /** * Child.java * 多态,本类作为Father的子类 */ public class Child extends Father { /** * @param i * @param j */ public Child(int i, int j) { //子类的构造方法 super(i, j); //调用父类的构造方法 } int drink(){ //重写了父类的方法 System.ou
您可能关注的文档
- ~商务英语视听说国家精品课程advertising.ppt
- “三教圣城”耶路撒冷.ppt
- “新美南吉的童话”群文阅读祖各庄小学 胡志杰.ppt
- 《不同的购物场所》.ppt
- 《诚实守信,礼貌待人》主题班会.ppt
- 《毛泽东词二首》.ppt
- 《鸟的天堂》第二课时.ppt
- 《爬山虎的脚》教学演示.ppt
- 《烹饪化学》第三版全套教学.ppt
- 《锐角三角函数》第三课时参考.ppt
- CN113902707B 标记球定位方法及其应用 (佗道医疗科技有限公司).docx
- CN114003123B 控件移动方法和电子设备 (华为技术有限公司).docx
- CN113918573B 数据处理方法及装置 (上海哔哩哔哩科技有限公司).docx
- CN113901192B 一种对话节点参数预填充的对话方法、装置、设备和介质 (深圳壹账通智能科技有限公司).docx
- DB21T 4205-2025地理标志产品 梁山西瓜(小梁山西瓜).pdf
- DB21T 4212-2025地理标志产品 辽中寒富苹果.pdf
- CN113893552B 虚拟资源的分配方法及装置、存储介质、计算机设备 (完美世界(北京)软件科技发展有限公司).docx
- CN113971628B 图像匹配方法、装置和计算机可读存储介质 (株式会社理光).docx
- CN113920563B 在线考试作弊识别方法、装置、计算机设备和存储介质 (上海浦东发展银行股份有限公司).docx
- CN113963204B 一种孪生网络目标跟踪系统及方法 (江南大学).docx
最近下载
- (正式版)D-L∕T 1922-2018 架空输电线路导地线机械震动除冰装置使用技术导则.docx VIP
- ISO 10605(2008年版,2009.12.25翻译)(1)完整版.pdf VIP
- 地铁培训安全员课件.pptx VIP
- Q SH CG0156-2021 增效聚合物驱用稠油降黏剂技术要求.pdf VIP
- 20ZJ401 楼梯栏杆建筑工程图集.pdf VIP
- 创新日化德固赛rewoquat sq1.pdf VIP
- YL_335B说明书.pdf
- 中国入党志愿书(空白材料模板).pdf VIP
- 城市轨道交通安全管理第一章城市轨道交通安全管理概述课件.pdf VIP
- SJT 11294-2018 防静电地坪涂料通用规范(高清版).pdf VIP
原创力文档

文档评论(0)