zhoulz-继承与多态-2015

zhoulz-继承与多态-2015

ID:25077113

大小:1.06 MB

页数:113页

时间:2018-11-17

zhoulz-继承与多态-2015_第1页
zhoulz-继承与多态-2015_第2页
zhoulz-继承与多态-2015_第3页
zhoulz-继承与多态-2015_第4页
zhoulz-继承与多态-2015_第5页
资源描述:

《zhoulz-继承与多态-2015》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库

1、118七月2021第5章继承与多态218七月2021继承性与多态性是面向对象程序设计的另外两个重要特性。在Java语言中,提供了能够实现继承性与多态性的完备技术,这使得更多的人们愿意将Java作为软件开发语言,进而充分地施展面向对象抽象性、封装性、继承性与多态性的优势,为构筑新时代的软件开发理念奠定了坚固基础。318七月20217.1类的继承继承机制是面向对象程序设计不可缺少的关键概念,是实现软件可重用的根基,是提高软件系统的可扩展性与可维护性的主要途径。继承是一种由已有的类创建新类的机制。所谓继承是指一个类的定义可以基于另外一个已经存

2、在的类,即子类基于父类,从而实现父类代码的重用。由继承而得到的类称为子类,被继承的类称为父类或超类。Java不支持多重继承,子类只能有一个父类。418七月2021继承关系的UML图形符号表示法两个类的继承关系可以用“isa”表示,即子类是父类所描述的实体集中的子集。也就是说,父类涵盖更加共性的特征,更加具有一般性,子类增加的内容更加具有个性,是一般性之外的特殊内容,因此,又可以说,这种类的继承关系充分地反映了“一般与特殊”的关系。518七月20217.1.1定义子类在Java语言中,定义子类的语法格式为:[修饰符]class子类名ext

3、ends父类名{子类体}其中,“修饰符”是子类的访问特性说明符等;class为定义类的关键字,“子类名”是子类的名称;extends是关键字“子类体”是子类在继承父类内容的基础上,添加的特有内容。618七月2021EmployeeClass类与ManagerClass类的关系图特殊津贴718七月2021//filename:EmployeeClass.javapublicclassEmployeeClass{//雇员类privateStringname;//姓名privatedoublesalary;//工资privateStringd

4、epartment;//部门publicEmployeeClass(){...}publicEmployeeClass(Stringname,doublesalary,Stringdepartment){...}publicvoidsetName(Stringname){...}publicvoidsetSalary(doublesalary){...}publicvoidsetDepartment(Stringdepartment){...}publicStringgetName(){...}publicdoublegetSalary

5、(){...}publicStringgetDeparyment(){...}publicStringtoString(){...}}818七月2021publicManagerClassextendsEmployeeClass{//经理类privatedoublespecial;//特殊津贴publicManagerClass(){...}publicManagerClass(Stringname,doublesalary,Stringdepartment,doublespecial){...}publicvoidsetSpecial

6、(doublespecial){...}publicdoublegetSpecial(){...}publicStringtoString(){...}}918七月2021举例:设计与几何图元有关的类。问题分析:几何图元是指可以绘制的基本几何图形,例如矩形、正方形、圆形、多边形等。鉴于篇幅的考虑,这里只考虑矩形与正方形。假设任何几何图元都有颜色与位置两个属性,因此应该将这些共有特性定义在一个类中,它是顶层类;而矩形还应该有长、宽两个属性,由于矩形是一种几何图元,所以它自然应该拥有几何图元的共有特性,因此可以将矩形类设计为几何图元类的子类

7、;因为正方形是一种特殊的矩形,它的特殊性在于长与宽相等,所以应该将正方形类设计为矩形的子类。1018七月2021ShapeClass类、RectangleClass类与SquareClass类之间的关系类图ShapeClass类是几何图元的通用类;矩形是一种特定的几何图元,因此,RectangleClass类应该是ShapeClass的子类;正方形是一种特殊的矩形,所以SquareClass类是RectangleClass类的子类。1118七月20211218七月2021//filename:ShapeClass.javaimportj

8、ava.util.*;publicclassShapeClass{//几何图元类privateColorClasscolor;//颜色属性privatePointplace;//位置属性publicShap

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。