1 / 57
文档名称:

Java程序设计 第05章 继承与多态.ppt

格式:ppt   页数:57
下载后只包含 1 个 PPT 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

Java程序设计 第05章 继承与多态.ppt

上传人:策划大师 2011/11/13 文件大小:0 KB

下载得到文件列表

Java程序设计 第05章 继承与多态.ppt

文档介绍

文档介绍:第5章
继承与多态
继承性与多态性是面向对象程序设计的另外两个重要特性。在Java语言中,提供了能够实现继承性与多态性的完备技术,这使得更多的人们愿意将Java作为软件开发语言,进而充分地施展面向对象抽象性、封装性、继承性与多态性的优势,为构筑新时代的软件开发理念奠定了坚固基础。
类的继承
继承机制是面向对象程序设计不可缺少的关键概念,是实现软件可重用的根基,是提高软件系统的可扩展性与可维护性的主要途径。所谓继承是指一个类的定义可以基于另外一个已经存在的类,即子类基于父类,从而实现父类代码的重用,在有些教材中,又将父类称为超类或者基类。
继承关系的UML图形符号表示法
两个类的继承关系可以用“is a”表示,即子类是父类所描述的实体集中的子集。也就是说,父类涵盖更加共性的特征,更加具有一般性,子类增加的内容更加具有个性,是一般性之外的特殊内容,因此,又可以说,这种类的继承关系充分地反映了“一般与特殊”的关系。
定义子类
在Java语言中,定义子类的语法格式为:
[修饰符] class 子类名 extends 父类名{
子类体
}
其中,“修饰符”是子类的访问特性说明符等;class为定义类的关键字,“子类名”是子类的名称;extends是关键字,“子类体”是子类在继承父类内容的基础上,添加的特有内容。
EmployeeClass类与ManagerClass类的关系图
// file name:
public class EmployeeClass { // 雇员类
private String name; // 姓名
private double salary; // 工资
private String department; // 部门
public EmployeeClass() { ... }
public EmployeeClass(String name,
double salary, String department){ ... }
public void setName(String name) { ... }
public void setSalary(double salary) { ... }
public void setDepartment(String department) { ... }
public String getName() { ... }
public double getSalary() { ... }
public String getDeparyment() { ... }
public String toString() { ... }
}
public ManagerClass extends EmployeeClass { // 经理类
private double special; // 特殊津贴
public ManagerClass() { ... }
public ManagerClass(String name, double salary,
String department, double special) { ... }
public void setSpecial(double special) { ... }
public double getSpecial() { ... }
public String toString() { ... }
}
举例:设计与几何图元有关的类。
问题分析:几何图元是指可以绘制的基本几何图形,例如矩形、正方形、圆形、多边形等。鉴于篇幅的考虑,这里只考虑矩形与正方形。
假设任何几何图元都有颜色与位置两个属性,因此应该将这些共有特性定义在一个类中,它是顶层类;而矩形还应该有长、宽两个属性,由于矩形是一种几何图元,所以它自然应该拥有几何图元的共有特性,因此可以将矩形类设计为几何图元类的子类;因为正方形是一种特殊的矩形,它的特殊性在于长与宽相等,所以应该将正方形类设计为矩形的子类。
ShapeClass类、RectangleClass类与 SquareClass类之间的关系类图
ShapeClass类是几何图元的通用类;矩形是一种特定的几何图元,因此,RectangleClass类应该是ShapeClass的子类;正方形是一种特殊的矩形,所以SquareClass类是RectangleClass类的子类。

最近更新

2023年安徽新闻出版职业技术学院单招职业倾向.. 38页

2026年傅雷家书读书心得 7页

2023年安徽省蚌埠市单招职业适应性考试题库汇.. 41页

2023年安徽警官职业学院单招职业倾向性考试题.. 41页

2023年安阳职业技术学院单招职业技能考试模拟.. 40页

2026年做家务的作文高一 8页

2026年做一名志愿者的作文初二 6页

2023年广东省珠海市单招职业倾向性考试题库及.. 41页

2023年德宏职业学院单招职业技能考试题库汇编.. 40页

2023年江苏省连云港市单招职业适应性考试题库.. 41页

2023年菏泽学院单招职业技能考试题库推荐 41页

2023年陕西省商洛地区单招职业倾向性考试题库.. 40页

2023年黑龙江省哈尔滨市单招职业适应性考试题.. 41页

2024年三亚城市职业学院单招职业技能测试模拟.. 40页

聚类分析客流特征提取 35页

2024年上海工程技术大学单招职业技能考试题库.. 41页

2026年促销方案写作思路 30页

2024年中国计量大学单招职业倾向性测试模拟测.. 41页

2024年临沂职业学院单招职业倾向性考试模拟测.. 40页

2024年乌海职业技术学院单招职业技能测试题库.. 39页

2024年云南工程职业学院单招职业倾向性考试题.. 39页

2025年重庆市《保安员证》考试题库含答案 39页

预防滑倒、绊倒及跌落专题培训课件 45页

混凝土工程培训课件优秀PPT 26页

小学数学六年级下册《鸽巢问题》作业设计 9页

食品标签审核确认表 3页

个人检讨反思(向管理服务对象借钱) 5页

山东科技版小学英语五年级下册词汇表带音标 4页

花卉学课件7 花卉的栽培管理 79页

如何领受神的医治 查尔斯.凯普斯 15页