- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
《第5章 Java面对对象的程序设计(二)》.ppt
第4章 Java面对对象的程序设计(二) 学习导读 本章讨论面向对象的编程(OOP)及其关键技术:继承和多态、接口、包。 继承性是软件复用的一种形式,对降低软件复杂性行之有效。继承性同时是面向对象程序设计语言的特点,采用对象但没有继承性的语言是基于对象的语言,但不是面向对象的语言,这是两者的区别。 多态性允许以统一的风格处理已存在的变量及相关的类,使增加系统中新功能变得容易。 5.1 继承的概念 5.1 继承的概念 继承定义 继承性是软件复用的一种形式。新类由已存在的类生成,通过保留它们的属性和行为,并且根据新类的要求对性能加以修改,添加新的属性和行为。 如果子类只从一个父类继承,则称为单继承;如果子类从一个以上父类继承,则称为多继承。注意 Java不支持多重继承,但它支持“接口”概念。接口使Java获得了多重继承的许多优点,摒弃了相应的缺点。 5.2 扩展类 1 继承关系定义 5.2 扩展类 class CommonEmployee extends Employee //子类1: { int m_ManagerNo ;//定义类属性m _ManagerNo,代表雇员上司的编号 } class ManagerEmployee extends Employee //子类2: { int m_SecretaryNo; //定义类属性m_SecretaryNo,代表秘书的编号 } 5.2 扩展类 2 属性继承与隐藏 尽管Employee类是一个父类,但是并不因为它是父类就意味着它有更多的功能。恰恰相反,子类比它们的父类具有更多的功能。因为子类是父类的扩展,增加了父类没有的属性和方法 (1)子类不能访问父类的private成员,但子类可以访问其父类的public, (2)protected访问是public和private访问之间一个保护性的中间层次。 (3)由于被继承的父类成员没有在子类声明中列出,但是这些成员确实存在于子类中。 5.2 扩展类 3 方法继承、覆盖与重载 1).方法继承 对于子类对象,可以使用父类中的方法。即使这些方法没有明显地在子类中定义,它们也自动地从父类中继承过来了。 2).方法覆盖 方法的覆盖是指:子类定义同名方法来覆盖父类的方法,是多态技术的一个实现。当父类方法在子类中被覆盖时,通常是子类版本调用父类版本,并做一些附加的工作。 见例5.1 例5.2 5.2 扩展类 关于覆盖应注意的事项 1、方法覆盖中,子类在重新定义父类已有的方法时,应保持与父类完全相同的方法头声明,即与父类完全相同的方法名、返回值和参数列表。 2、子类可以添加字段,也可以添加方法或者覆盖父类中的方法。然而,继承不能去除父类中的任何字段和方法。 3、注意方法覆盖中的this和super 见下页: 5.2 扩展类 this和super 1、this表示的是当前对象本身,this代表当前对象的一个引用。可以理解为对象的另一个名字。利用this可以调用当前对象的方法和属性。 如:this.getName()和getName()在类中是一样的。见例1this的使用 2、super表示的是当前对象的直接父类对象,是当前对象的父类对象的引用。见例2 super的使用 5.2 扩展类 3.方法重载 重载的定义:可以用相同的方法名但不同的参数表来定义方法(参数表中参数的数量、类型或次序有差异),这称为方法重载。 重载(overloading):当多个方法具有相同的名字而含有不同的参数时,便发生重载。编译器必须挑选处调用哪个方法。它通过将在不同方法头部中的参数类型和在特定的方法调用中使用值的类型进行比较,从而挑选出正确的方法。 5.2 扩展类 4 在子类中使用构造函数 关于子类构造函数的规律总结如下: (1)子类构造函数总是先调用(显式的或隐式地)其父类的构造函数,以创建和初始化子类的父类成员。 (2)构造函数不能继承,它们只属于定义它们的类。 (3)当创建一个子类对象时,子类构造函数首先调用父类的构造函数并执行,接着才执行子类构造函数 5.2 扩展类 5 父类对象与子类对象的关系 1、子类对象可以被视为是其父类的一个对象; 2、父类对象不可被当作某个子类的对象; 3、如果一个方法的形式参数定义的是父类对象,那么调用这个方法时可以使用子类对象作为实际参数 4、如果父类对象引用指向的实际是一个子类对象,那么父类对象的引用可以强制类型转换为子类对象的引用 例:Employee e 5.2 扩展类 5 父类对象与子类对象的关系 调用过程:e. getSalary() 程序会选择正确的getSalary方法。注意尽管e的声明类型是Employee. 当e指向一个Emplo
您可能关注的文档
- 《数据库面试题(SQL+ORACLE)-DBA数据库管理员JAVA程序员架构师必看》.pdf
- 《数据挖掘关联性分析小软件Java源程序代码》.doc
- 《数据结构(Java版)(第二版)(叶核亚主编)源码_linearList》.doc
- 《数据结构(Java 语言描述)第一章》.ppt
- 《新人教英语词汇句型复习课件必修4 Unit 2 Working the land》.ppt
- 《新时代交互英语level4 详细答案》.doc
- 《新时代交互英语视听说level3答案》.doc
- 《新时代交互英语视听说level4答案》.doc
- 《新概念 2 Lesson 10》.ppt
- 《新概念 2 Lesson 13》.ppt
- 实验室危废随意倾倒查处规范.ppt
- 实验室危废废液处理设施规范.ppt
- 实验室危废处置应急管理规范.ppt
- 初中地理中考总复习精品教学课件课堂讲本 基础梳理篇 主题10 中国的地理差异 第20课时 中国的地理差异.ppt
- 初中地理中考总复习精品教学课件课堂讲本 基础梳理篇 主题10 中国的地理差异 第21课时 北方地区.ppt
- 危险废物处置人员防护培训办法.ppt
- 危险废物处置隐患排查技术指南.ppt
- 2026部编版小学数学二年级下册期末综合学业能力测试试卷(3套含答案解析).docx
- 危险废物处置违法案例分析汇编.ppt
- 2026部编版小学数学一年级下册期末综合学业能力测试试卷3套精选(含答案解析).docx
最近下载
- 2023年秋国开《管理思想史》形考作业1-4答案.pdf
- 小学一年级数学上册期末试卷(A4打印版).pdf VIP
- 旅游学概论期末考试试题及解析.docx VIP
- 自贡市餐厨垃圾处理配套设施改建项目环评报告书.pdf VIP
- 《音乐之父巴赫》课件.ppt VIP
- 【中考短语】初中英语动词固定搭配全汇总.pdf VIP
- 射频设计软件:Keysight ADS二次开发_(7).Python脚本在KeysightADS中的应用.docx VIP
- 2025年民主生活会100条核心素材.pdf VIP
- (直接打印版)苏教版小学数学一年级上册期末试卷.pdf VIP
- 酒店拆除改造工程专项拆除施工方案.docx VIP
原创力文档


文档评论(0)