海南大学:《Java语言程序设计》课程电子教案(PPT教学课件)第六章 类的继承性

第六章类的继承性 ì 课程内容:父类与子类、方法覆盖、0 bject类、设计 C常用修饰符、多态与对象转型、接口、内部类、程序 开发与类设计 ■授课时间:2006/03/21 ■教学目标:了解继承的基本概念,掌握在现有类基础 上如何构建新类,掌握多态、动态绑定以及抽象类的 概念和使用,了解0 bject类的作用和使用方式,以及 如何设计类 烟 重点:继承的概念,多态、动态绑定、Object类, Class类的应用 ■教学方法:讲授 ■教学过程: (省略) ©2005计算机系杨群 All rights lefts reserved
©2005 计算机系 杨厚群 All rights & lefts reserved. 课程内容: 父类与子类、方法覆盖、Object类、设计 c常用修饰符、多态与对象转型、接口、内部类、程序 开发与类设计 授课时间:2006/03/21 教学目标:了解继承的基本概念,掌握在现有类基础 上如何构建新类,掌握多态、动态绑定以及抽象类的 概念和使用,了解Object类的作用和使用方式,以及 如何设计类 重点:继承的概念,多态、动态绑定、Object类、 Class类的应用 教学方法:讲授 教学过程:(省略) 第六章 类的继承性

继承 ■扩展类 “is-a关系是继承的特点,子类功能多于父 类 例: class Cylinder extends Circle 设计类时,应把最通用的方法放在父类中,专 用方法放在子类中 ©2005计算机系杨厚群 All rights lefts reserved
©2005 计算机系 杨厚群 All rights & lefts reserved. 继承 扩展类 “is-a ”关系是继承的特点,子类功能多于父 类 例: class Cylinder extends Circle { . } 设计类时,应把最通用的方法放在父类中,专 用方法放在子类中

父类与子类 父类 Circle Circle Methods Circle Data 继承 子类 Cylinder Circle Methods Circle Data Cylinder Methods Cylinder Data 父类 子类 Circle Cylinder UML图 -radius -length +getRadius -setRadius -getLength -findArea -setLength -findVolume ©2005计算机系杨厚群 All rights lefts reserved
©2005 计算机系 杨厚群 All rights & lefts reserved. 父类与子类 父类 Circle Circle Methods Circle Data 继承 Cylinder Circle Methods Cylinder Methods Circle Data 子类 Cylinder Data Circle -radius +getRadius +setRadius +findArea Cylinder -length +getLength +setLength +findVolume 父类 子类 UML图

创建子类 创建子类继承父类的方法和属性,还可以: 1.加入新属性 2.加入新方法 3.覆盖父类的方法 源码 ©2005计算机系杨厚群 All rights lefts reserved
©2005 计算机系 杨厚群 All rights & lefts reserved. 创建子类 创建子类继承父类的方法和属性,还可以: 1. 加入新属性 2. 加入新方法 3. 覆盖父类的方法 源码

范例:继承 创建一个Cylinder对象,然后探讨Cylinder 和Circle两个类之间的关系 源码 ©2005计算机系杨群 All rights lefts reserved
©2005 计算机系 杨厚群 All rights & lefts reserved. 范例:继承 创建一个Cylinder对象,然后探讨Cylinder 和Circle两个类之间的关系 源码

使用关键字super 关键字super用来指代类的直接父类,有如下 两种使用方式: 调用父类的构造函数 调用父类的方法 ©2005计算机系杨厚群 All rights lefts reserved
©2005 计算机系 杨厚群 All rights & lefts reserved. 使用关键字super 关键字super用来指代类的直接父类,有如下 两种使用方式: – 调用父类的构造函数 – 调用父类的方法

范例:覆盖父类的方法 覆盖(override)是子类重定义方法,必须 有相同的方法头、方法名、返回值、参数列 表 Cylinder:类覆盖了Circle类定义的 findArea()方法 源码 ©2005计算机系杨群 All rights lefts reserved
©2005 计算机系 杨厚群 All rights & lefts reserved. 范例:覆盖父类的方法 覆盖(override)是子类重定义方法,必须 有相同的方法头、方法名、返回值、参数列 表 Cylinder类覆盖了Circle类定义的 findArea()方法 源码

Object类 Object类是所有类的根类 toString()方法返回一个代表该对象值的字 符串,几乎每个类都会覆盖此方法(强烈推 荐) equals0方法比较两个对象是否相等(判断 是否指向同一内存区域,意义不大,除非子 类覆盖该方法) ■clone)方法用于克隆对象 ©2005计算机系杨厚群 All rights lefts reserved
©2005 计算机系 杨厚群 All rights & lefts reserved. Object 类 Object类是所有类的根类 toString()方法返回一个代表该对象值的字 符串,几乎每个类都会覆盖此方法(强烈推 荐) equals() 方法比较两个对象是否相等(判断 是否指向同一内存区域,意义不大,除非子 类覆盖该方法) clone()方法用于克隆对象

protected修饰符 protected修饰符可以用来修饰属性和方法, protected修饰的属性和方法允许同一包内的 类或其子类访问,即使子类不在同一包内 ©2005计算机系杨群 All rights lefts reserved
©2005 计算机系 杨厚群 All rights & lefts reserved. protected修饰符 protected修饰符可以用来修饰属性和方法, protected修饰的属性和方法允许同一包内的 类或其子类访问,即使子类不在同一包内

protected修饰符(cont.) pacakge pl pacakge p2 class Cl class C2 extends Cl protected int x x can be read or modified in C2 class C3 class C4 Clcl: Clcl; c1.x can be read or c1.x cannot be read modified nor modified ©2005计算机系杨厚群 All rights lefts reserved
©2005 计算机系 杨厚群 All rights & lefts reserved. protected修饰符(cont.) pacakge p1 class C1 protected int x class C3 C1 c1; c1.x can be read or modified pacakge p2 class C2 extends C1 x can be read or modified in C2 class C4 C1 c1; c1.x cannot be read nor modified
按次数下载不扣除下载券;
注册用户24小时内重复下载只扣除一次;
顺序:VIP每日次数-->可用次数-->下载券;
- 海南大学:《Java语言程序设计》课程电子教案(PPT教学课件)第八章 图形程序设计入门.ppt
- 海南大学:《Java语言程序设计》课程电子教案(PPT教学课件)第五章 使用对象对象与类编写程序.ppt
- 海南大学:《Java语言程序设计》课程电子教案(PPT教学课件)第二章 基本数据类型与基本操作.ppt
- 海南大学:《Java语言程序设计》课程电子教案(PPT教学课件)第九章 创建用户界面.ppt
- 海南大学:《Java语言程序设计》课程电子教案(PPT教学课件)第三章 控制语句.ppt
- 海南大学:《Java语言程序设计》课程电子教案(PPT教学课件)第七章 数组和向量.ppt
- 海南大学:《Java语言程序设计》课程电子教案(PPT教学课件)第一章 Java入门(主讲:杨厚群).ppt
- 海南大学:《Java语言程序设计》课程教学大纲 Java Programming.pdf
- 《Visual Basic程序设计》课程电子教案(PPT课件)第9章 界面设计.ppt
- 《Visual Basic程序设计》课程电子教案(PPT课件)第8章 文件.ppt
- 《Visual Basic程序设计》课程电子教案(PPT课件)第7章 图形操作.ppt
- 《Visual Basic程序设计》课程电子教案(PPT课件)第6章 常用控件.ppt
- 《Visual Basic程序设计》课程电子教案(PPT课件)第5章 数组.ppt
- 《Visual Basic程序设计》课程电子教案(PPT课件)第4章 基本的控制结构.ppt
- 《Visual Basic程序设计》课程电子教案(PPT课件)第3章 VB语言基础.ppt
- 《Visual Basic程序设计》课程电子教案(PPT课件)第2章 程序设计入门.ppt
- 《Visual Basic程序设计》课程电子教案(PPT课件)第1章 Visual Basic程序设计概述(海南大学:吴星).ppt
- 《Visual Basic程序设计》课程电子教案(PPT课件)第10章 过程.ppt
- 华南农业大学:《高级语言程序设计》课程教学资源(PPT课件)chap12_文件.ppt
- 华南农业大学:《高级语言程序设计》课程教学资源(PPT课件)chap11_指针进阶.ppt
- 海南大学:《Java语言程序设计》课程电子教案(PPT教学课件)第十一章 异常处理.ppt
- 海南大学:《Java语言程序设计》课程电子教案(PPT教学课件)第十三章 多线程.ppt
- 海南大学:《Java语言程序设计》课程电子教案(PPT教学课件)第十二章 国际化.ppt
- 海南大学:《Java语言程序设计》课程电子教案(PPT教学课件)第十五章 输入输出.ppt
- 海南大学:《Java语言程序设计》课程电子教案(PPT教学课件)第十六章 网络.ppt
- 海南大学:《Java语言程序设计》课程电子教案(PPT教学课件)第十四章 多媒体.ppt
- 海南大学:《Java语言程序设计》课程电子教案(PPT教学课件)第十章 applet和高级图形界面.ppt
- 海南大学:《Java语言程序设计》课程电子教案(PPT教学课件)第四章 方法.ppt
- 石河子大学:《微机原理与接口技术》课程教学大纲(负责人:刘恩博).pdf
- 石河子大学:《微机原理与接口技术》课程授课教案(任课教师:李栓明).doc
- 石河子大学:《微机原理与接口技术》课程教学实验指导书(试用).doc
- 《微型计算机技术及应用》课程教材课件(PPT讲稿)第1章 微型计算机概述.pptx
- 《微型计算机技术及应用》课程教材课件(PPT讲稿)第2章 16位微处理器.pptx
- 《微型计算机技术及应用》课程教材课件(PPT讲稿)第3章 16位和32位微处理器的指令系统.pptx
- 《微型计算机技术及应用》课程教材课件(PPT讲稿)第5章 微型计算机和外设的数据传输.pptx
- 《微型计算机技术及应用》课程教材课件(PPT讲稿)第6章 串并行通信和接口技术.pptx
- 《微型计算机技术及应用》课程教材课件(PPT讲稿)第7章 中断控制器DMA控制器和计数器定时器.pptx
- 绍兴文理学院:《生物摄影》课程教学资源(讲义)生物摄影讲义(主讲:田润刚).pdf
- 华南农业大学:《大学计算机基础》课程教学课件(习题与解答)第一章 计算机及信息技术概述.doc
- 华南农业大学:《大学计算机基础》课程教学课件(习题与解答)第二章 计算机信息基础.doc