- 1、本文档共141页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
第7章面向对象程序设计(下)1
教学目标(1) 理解父类和子类的关系,使用关键字extends扩展一个类(2) 理解protected访问权限,应用访问修饰符实现更好的信息隐藏(3) 理解子类构造方法的执行,掌握super的用法。(4) 理解在子类中重写父类方法,能应用方法重写(5) 使用final关键字防止类的继承和方法重写(6) 理解密封类的定义和用途(7) 理解Object类,能应用和重写其常用方法toString()、equals()(8) 掌握多态和动态绑定(9) 掌握对象的类型转换(10) 掌握抽象类的概念和应用,理解抽象类示例(11) 掌握接口的概念,掌握接口的声明和使用(12) 掌握父接口、子接口、默认方法及其冲突的解决(13) 理解密封接口和注解接口(14) 理解接口的示例(15) 理解抽象类与接口的区别(16) 理解面向对象程序设计的5个原则2
引言(1/3)3假设要定义一个类,对圆、矩形、三角形建模。这些类有很多共同的特性(画线颜色、填充与否、创建时间等等)。
引言(2/3)4设计这些类,如何避免冗余,还能使系统易于理解和易于维护?答案是:继承,可提炼公共属性和行为创建一个通用的几何对象类Shape软件重用:在扩展创建新的几何形状时,可以进一步重用Shape例如:正六边形、正五边形、梯形等
引言(3/3)Stoptryingtoreinventthewheel,可能是每个程序员入行被告知的一条准则软件重用继承:一种基于源代码的重用机制多态:解决类的功能和行为在继承体系中的再抽象5
内容7.1继承7.2super7.3方法重写7.4final7.5密封类67.6Object类7.7多态性7.14抽象类与接口7.8动态绑定7.9对象转换7.10抽象类7.11抽象类示例7.12接口7.13接口示例
内容7.1继承7.2super7.3方法重写7.4final7.5密封类77.6Object类7.7多态性7.14抽象类与接口7.8动态绑定7.9对象转换7.10抽象类7.11抽象类示例7.12接口7.13接口示例
7.1继承87.1.1父类与子类7.1.2protected数据和方法
7.1.1父类与子类Java语言是一种单继承的语言,在父类的基础上定义其子类的一般语法形式为:publicclass子类名extends父类名{子类的新成员}需要说明的是:(1)子类名是一个合法的标识符,由用户自己定义。(2)关键字extends用在子类名之后,指定父类名,父类只允许有一个。(3)父类名必须是程序中已有的一个类的类名。(4)父类名之后是子类的类体,由一对花括号{}括起来,这对花括号中的内容是子类新定义的成员。9
7.1.1父类与子类银行账户类Account借记卡账户DebitCardAccount(不允许透支,具有余额)信用卡账户CreditCardAccount(允许透支,但有限额)这两种账户都共享银行账户Account的共同特征,并有新增功能。10
7.1.1父类与子类银行账户类Account、借记卡账户类DebitCardAccount、信用卡账户类CreditCardAccount的源代码分别在程序清单7-1、程序清单7-2、程序清单7-3中给出程序清单7-4TestCreditDebitAccount.java,对上述类进行测试11
7.1.1父类与子类基于上述示例,Java语言的继承机制需要注意的是:(1)Java语言是一种单继承语言,即子类继承父类使用关键字extends时,extends之后只能有一个父类名。(2)子类继承父类的内容,还可以新增内容和重写继承的内容。因此,子类不是父类的子集。(3)据Java语言官方文档,子类继承了父类中所有可被访问的成员(数据域和方法),但是构造方法不属于这类成员,父类构造方法不被能子类继承。然而,父类构造方法可以被子类调用,用于完成子类的初始化工作。例如,程序清单7-2第20行就是父类构造方法调用。(4)据Java语言官方文档,子类既不能继承父类的私有成员,也不能直接访问这些私有成员。如果父类定义了访问私有成员的公有或保护方法,那么子类可以通过这些父类的公有或保护方法间接访问这些私有成员。(5)不是所有“是一种(is-a)”关系都应该用继承来建模。例如,正方形是一种矩形,但是不应该定义一个正方形类继承自矩形类。12
7.1.1父类与子类注意:关于父类私有成员的继承问题辨析。从内存分配上讲,子类确实继承父类的私有成员。因为在实例化一个子类对象时,系统先为父类中定义的数据域(包括私有成员)分配内存,再为子类中定义的数据域分配内存,所有这些数据域都是属于这个新创
您可能关注的文档
- 《分布式能源》 表2-11 饭店的电、热动态负荷数据.pdf
- 《分布式能源》 课件 1.1 能源概念.ppt
- 《分布式能源》 课件 1.2 分布式能源系统.ppt
- 《分布式能源》 课件 1.3 国外内发展.ppt
- 《分布式能源》 课件 1.4 热电冷联产系统.ppt
- 《分布式能源》 课件 1.5 动力系统.ppt
- 《分布式能源》 课件 2.1 用户冷热电负荷.pptx
- 《分布式能源》 课件 2.2 动态负荷计算方法.pptx
- 《分布式能源》 课件 2.3 动态冷负荷计算.pptx
- 《分布式能源》 课件 3.1太阳能发电.pptx
- 中考语文复习专题二整本书阅读课件.ppt
- 中考语文复习积累与运用课件.ppt
- 2025年初中学业水平考试模拟试题(二)课件.ppt
- 四川省2015届理科综合试题48套第12套.pdf
- 【课件】战争与和平—美术作品反映战争+课件-2024-2025学年高中美术湘美版(2019)美术鉴赏.pptx
- 【课件】青春牢筑国家安全防线 课件 2024-2025学年高中树立总体国家安全观主题班会.pptx
- 【课件】原始人的创造+课件高中美术湘美版(2019)美术鉴赏.pptx
- 上海证券-美容护理行业周报:流量加快去中心化,强运营头部品牌影响较小 -2024-.pdf
- T_CSEIA 1005—2023_能源工业互联网平台数据治理要求.pdf
- T_CDSA 504.16-2023_急流救援技术培训与考核要求.pdf
最近下载
- GJB 841 FRACAS 故障报告、分析和纠正措施系统.docx
- 1.4高压断路器的检修.ppt VIP
- 2023-2024学年湖北省武汉市华中师范大学第一附属中学高三(上)期中检测物理试卷+答案解析(附后).pdf VIP
- 箱变安装分项及检验批验收报审和评定表.doc
- 生态规划复习试题.doc
- 2024年中考外研版英语一轮复习课件八年级下册 Modules4~6.pptx VIP
- 山东省济南2024年七年级下学期数学期中试卷2套(附答案).docx VIP
- 医院涉及未成年人被侵害案件的强制报告机制.docx VIP
- 2023年平顶山职业技术学院单招职业适应性测试题库及答案解析word版.pdf VIP
- 山东省济南2024年七年级下学期数学期中考试试卷(附答案) .docx VIP
文档评论(0)