华南农业大学:《面向对象的程序设计》 第八章 继承

大串 South China Agr icultur al University 第八章继承
第八章 继 承

主要内容: 81创建子类 82方法重载 ■8.3类层次结构 ■8.4可见性 85类间继承关系的结构 86组件类的层次结构 ■8.7扩展适配器类 ■8.8定时器类
主要内容: ◼ 8.1 创建子类 ◼ 8.2 方法重载 ◼ 8.3 类层次结构 ◼ 8.4 可见性 ◼ 8.5 类间继承关系的结构 ◼ 8.6 组件类的层次结构 ◼ 8.7 扩展适配器类 ◼ 8.8 定时器类

81创建子类 ■继承是现有类派生新类的过程。 用于派生新类的原始类称为父类、超类或者是基 类 ■被派生出的类称为子类或者是亚类 ■通过继承,新类自动包含了原始类的变量和方法 ■继承关系在UML类图中用空 Vehicle 心肩头表示,箭头从子类指向父 类。 Car
3 8.1 创建子类 ◼继承是现有类派生新类的过程。 ◼用于派生新类的原始类称为 父类、超类或者是基 类. ◼被派生出的类称为子类 或者是亚类 ◼ 通过继承,新类自动包含了原始类的变量和方法. ◼ 继承关系在UML类图中用空 心肩头表示,箭头从子类指向父 类。 Vehicle Car

Inheritance ■继承的过程是在两个类之间建立“是一种”的关系,就 是说子类是一种更具体的父类版。 程序员可以将新变量和方法添加到派生的新类,或者修 改新类的变量和方法。 ■继承的目的之一是实现软件重用。 ■通过继承创建新类比重新写类更方便、快捷、成本低。 继承支持软件重用,使得可以利用现有软件传见新组件 以便将主要精力投在软件的设计、实现和测试
4 Inheritance ◼ 继承的过程是在两个类之间建立“是一种”的关系,就 是说子类是一种更具体的父类版。 ◼ 程序员可以将新变量和方法添加到派生的新类,或者修 改新类的变量和方法。 ◼ 继承的目的之一是实现软件重用。 ◼ 通过继承创建新类比重新写类更方便、快捷、成本低。 ◼ 继承支持软件重用,使得可以利用现有软件传见新组件, 以便将主要精力投在软件的设计、实现和测试

Deriving subclasses 在java中,使用 extends建立类之间的继承关系。 class Car extends vehicle / class contents See Words, iava(page 288) See Book, iava (page 289) See Dictionary, iava (page 289)
5 Deriving Subclasses ◼ 在java中,使用extends建立类之间的继承关系。 ◼ See Words.java (page 288) ◼ See Book.java (page 289) ◼ See Dictionary.java (page 289) class Car extends Vehicle { // class contents }

81.1 Protected修饰符 ■可见性修饰符影像着父类中的类成员的访问方式。 ■父类的 Private方法或变量则不能在子类中访问,或 通过子类对象访问。 ■一个父类的Pub1ia方法或者变量可以在子类中按名 词访问,或通过子类对象访问。 ■单只为了子类能够访问而声明一个父类pub1ia变量, 则将违反封装性原理。 ■Java中提供了第三种可见性修饰符: protected
6 8.1.1 Protected修饰符 ◼ 可见性修饰符影像着父类中的类成员的访问方式。 ◼ 父类的 Private 方法或变量则不能在子类中访问,或 通过子类对象访问。 ◼ 一个父类的 Public 方法或者变量可以在子类中按名 词访问,或通过子类对象访问。 ◼ 单只为了子类能够访问而声明一个父类 Public 变量, 则将违反封装性原理。 ◼ Java 中提供了第三种可见性修饰符: protected

The protected Modifier 在当一个变量或方法声明为 protected可见性时 子类就可以引用,并且使父类保持了一定的封装性。 ■声明为 protected可见性的变量和方法可以由同 个包内的任何类访问。 在UM图中, protected成员前加“#”符号表 示 protected可见性
7 The protected Modifier ◼ 在当一个变量或方法声明为 protected 可见性时, 子类就可以引用,并且使父类保持了一定的封装性。 ◼ 声明为 protected 可见性的变量和方法可以由同一 个包内的任何类访问。 ◼ 在 UML 图中,protected 成员前加 “#” 符号表 示 proteceed 可见性

Class Diagram for Words Book if pages: int pageMessage0: void Words Dictionary definitions int main(args: String b): void definition Message: void
Class Diagram for Words Book # pages : int + pageMessage() : void Dictionary - definitions : int + definitionMessage() : void Words + main (args : String[]) : void

812 super引用 在继承中,父类所有的方法和变量(即使声明为 private可见性)都将由子类继承。 ■子类存在父类的所有方法和变量的定义,并且为变量预 留了內存空间,但是子类不能按名引用父类的 private成员 ■构造方法不能被继承。构造方法是一种特殊方法,用 创建一个具体类型的对象,子类没有必要继承父类的构 造方法。 ■如何处理子类引用父类的构造方法??
9 8.1.2 super引用 ◼ 在继承中,父类所有的方法和变量(即使声明为 private可见性)都将由子类继承。 ◼ 子类存在父类的所有方法和变量的定义,并且为变量预 留了内存空间,但是子类不能按名引用父类的 private成员。 ◼ 构造方法不能被继承。构造方法是一种特殊方法,用于 创建一个具体类型的对象,子类没有必要继承父类的构 造方法。 ◼ 如何处理子类引用父类的构造方法??

大串 South China Agr icultur al University 在Java中,使用保留字 super引用父类,使用 super引用可以访问父类的成员。 ■使用 super引用可以调用父类的构造方法。 See Words2, iava (page 291) See Book2. iava (page 292) See Dictionary2 iava (page 293)
◼ 在 Java 中,使用保留字 super 引用父类,使用 super 引用可以访问父类的成员。 ◼ 使用 super 引用可以调用父类的构造方法。 ◼ See Words2.java (page 291) ◼ See Book2.java (page 292) ◼ See Dictionary2.java (page 293)
按次数下载不扣除下载券;
注册用户24小时内重复下载只扣除一次;
顺序:VIP每日次数-->可用次数-->下载券;
- 华南农业大学:《面向对象的程序设计》 第七章 数组.ppt
- 华南农业大学:《面向对象的程序设计》 第六章 面向对象设计.ppt
- 华南农业大学:《面向对象的程序设计》 第五章 条件和循环语句.ppt
- 华南农业大学:《面向对象的程序设计》 第四章 编写类.ppt
- 华南农业大学:《面向对象的程序设计》 第三章 使用类和对象.ppt
- 华南农业大学:《面向对象的程序设计》 第二章 数据与表达式.ppt
- 华南农业大学:《面向对象的程序设计》 第一章 Hello Java.ppt
- 华南农业大学:《面向对象的程序设计》 第九章 多态性.ppt
- 兰州工业学院:《计算机网络与通信 Computer Network & Communication》课程教学资源(PPT课件讲稿)第八章网络安全技术 Safety Technology of Network.ppt
- 兰州工业学院:《计算机网络与通信 Computer Network & Communication》课程教学资源(PPT课件讲稿)第七章 Windows NT.ppt
- 兰州工业学院:《计算机网络与通信 Computer Network & Communication》课程教学资源(PPT课件讲稿)第六章 网络技术及组网技术 TCP/IP.ppt
- 兰州工业学院:《计算机网络与通信 Computer Network & Communication》课程教学资源(PPT课件讲稿)第五章 Repeaters(中继器)Network Devices & Interconnection.ppt
- 兰州工业学院:《计算机网络与通信 Computer Network & Communication》课程教学资源(PPT课件讲稿)第四章 局域网技术 Local Area Network Technology.ppt
- 兰州工业学院:《计算机网络与通信 Computer Network & Communication》课程教学资源(PPT课件讲稿)第三章 计算机网络体系结构 Architecture of Computer Network.ppt
- 兰州工业学院:《计算机网络与通信 Computer Network & Communication》课程教学资源(PPT课件讲稿)第二章 数据通信技术 Data Communication Basics.ppt
- 兰州工业学院:《计算机网络与通信 Computer Network & Communication》课程教学资源(PPT课件讲稿)第一章 计算机网络概述 Introduction of Computer Network.ppt
- 乐山师范学院:《计算机程序设计》 电子课件.ppt
- 华中科技大学:《计算机算法基础》 第四章 动态规划.ppt
- 华中科技大学:《计算机算法基础》 第三章 贪心方法.ppt
- 华中科技大学:《计算机算法基础》 复习要点.ppt
- 《计算机原理》 第三章(3-6) 模型机设计.ppt
- 《计算机原理》 第四章 存储子系统.ppt
- 《计算机原理》 第四章(4-2) 半导体存储器.ppt
- 《计算机原理》 第四章(4-3) 磁表面存储器.ppt
- 《计算机原理》 第五章 输入/输出系统.ppt
- 《计算机原理》 第五章(5-2) 总线.ppt
- 《计算机原理》 第五章(5-3) 中断方式及接口.ppt
- 《计算机原理》 第五章(5-4) DMA方式及接口.ppt
- 《计算机原理》 第六章 输入/输出设备.ppt
- 《计算机原理》 绪论.ppt
- 《计算机原理》 第一章 概论.ppt
- 《计算机原理》 第二章 计算机中的信息表示.ppt
- 《计算机原理》 第三章 CPU子系统.ppt
- 《计算机原理》 第三章(3-3) 组合逻辑控制器原理.ppt
- 《计算机原理》 第三章(3-4) 微程序控制器原理.ppt
- 《计算机原理》 第三章(3-5) 主机和外部设备的信息交换.ppt
- 《ASP3高级编程》学习资料(讲稿)第一章 ASP基础.pdf
- 《ASP3高级编程》学习资料(讲稿)第二章 请求和响应的处理.pdf
- 《ASP3高级编程》学习资料(讲稿)第三章 ASP应用程序与会话.pdf
- 《ASP3高级编程》学习资料(讲稿)第四章 服务器进程和 ASP Serve对象.pdf