




已阅读5页,还剩14页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
抽象类 接口 05 04 2020 抽象类 接口 2 抽象类 接口 抽象类 抽象方法接口接口与抽象类 05 04 2020 抽象类 接口 3 抽象类 类的更高程次的抽象 在上一章 我们可以创建子子类的对象 也可以创建超类的对象 但从继承层次由下而上 类变得更通用也更抽象 甚至只具备概念上的意义 而并非需要其特定的实例对象 这样更高抽象程次的超类我们把它叫做抽象类 publicabstractclassCar 05 04 2020 抽象类 接口 4 继承层次 05 04 2020 抽象类 接口 5 抽象类特点 抽象类不能被实例化CarmyCar right myCar newCar Error 抽象类可以包含抽象方法 abstractmethod只在超类中声明 而在其子类中重写实现 publicabstractvoidaccelerate publicabstractvoiddecelerate 声明抽象类的子类也可以是抽象类继承抽象类的非抽象类 则必须实现超类中的抽象方法 05 04 2020 抽象类 接口 6 抽象类 思考A 非抽象超类能包含抽象方法吗 为什么 思考B 抽象类可以包含非抽象方法吗 为什么 应该怎么设计思考C 抽象类必须包含抽象方法吗 思考D 继承抽象类的抽象类可以实现超类中的抽象方法吗 05 04 2020 抽象类 接口 7 抽象类示例 Car javaBadCar java publicclassBadCarextendsCar2 Uponcompilationyoushouldreceivethefollowingerror BadCar java 1 BadCarshouldbedeclaredabstract itdoesnotdefinedecelerate inCar2publicclassBadCarextendsCar2 1error 05 04 2020 抽象类 接口 8 接口 在一个继承体系中不可避免会出现这种情况 方法在类层次中越堆越高以致其可以为越来越多的子类可用 接口的设计避免了这个问题 它们把方法或方法系列的定义从类层次中分开 与类层次无关的类实现相同的接口是可行的 这是实现接口的真正原因所在 05 04 2020 抽象类 接口 9 接口特点 多个无关的类可以实现同一个接口 一个类可以实现多个无关的接口接口可以扩展当实现一个接口方法时 该方法它必须声明成public 接口定义可以是default或者publicinterfaceif1 publicvoidaaa1 voidaaa2 publicintii 99 publicstaticfinal publicinterfaceif2 publicvoidaaa1 voidaaa2 intii 99 05 04 2020 抽象类 接口 10 接口的定义 Serviceable java publicinterfaceServiceable publicvoidchangeOil publicvoidtuneUp 05 04 2020 抽象类 接口 11 接口的实现 Porsche2 java publicclassPorsche2extendsCarimplementsServiceable publicvoidtuneUp System out println Tuningupaporsche publicvoidchangeOil System out println Changingaporsche soil 05 04 2020 抽象类 接口 12 针对接口编程 Mechanic2 java publicclassMechanic2 publicvoidservice Serviceables s changeOil s tuneUp publicstaticvoidmain String args Porscheporsche newPorsche Pintopinto newPinto Mechanic1mechanic newMechanic1 mechanic service porsche mechanic service pinto 05 04 2020 抽象类 接口 13 扩展接口 在扩展接口中添加新的抽象方法publicinterfaceServiceable1extendsServiceable publicvoidtest 05 04 2020 抽象类 接口 14 实现接口与继承超类 05 04 2020 抽象类 接口 15 接口作用总结 通过接口实现不相关类的相同行为 而无需考虑这些类之间的关系 通过接口指明多个类需要实现的方法 通过接口了解对象的交互界面 而无需了解对象所对应的类 针对接口编程 05 04 2020 抽象类 接口 16 接口与抽象类 如果功能与对象自身密切相关 则在超类中使用抽象方法 如果该功能只是对象的辅助行为 则应该使用接口 如果该功能可被全局性的应用到其他无关对象 则可使用接口 应考虑使用AOP方式 05 04 2020 抽象类 接口 17 掌握重点 抽象类的概念抽象类有哪些特点为什么要使用接口接口与抽象类的使用理解针对接口编程 05 04 2020 抽象类 接口 18 课后练习 定义一个Person抽象类 至少包含一个抽象方法 并修改上一章的Employee作为
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年度生态围墙施工与节能改造承包合同范本
- 2025版铁矿石国际贸易结算合同
- 2025年度石材材料市场调研与采购合同
- 2025版企业员工职业规划与团队协作能力培训合同
- 2025版品牌皮鞋品牌授权区域市场推广费用结算合同
- 2025年度水电安装工程安全管理承包合同
- 2025版智能家居控制系统购买及售后服务合同
- 2025版事业单位借调人员管理与服务规范及薪酬福利合同
- 2025版石子包销合同范本(适用环保工程)
- 2025年度智能化企业出纳岗位聘用协议
- 餐饮店食品经营操作流程4篇
- 2025年黑龙江、吉林、辽宁、内蒙古高考生物真题试卷(解析版)
- 药物治疗监测试题及答案
- GB/T 45654-2025网络安全技术生成式人工智能服务安全基本要求
- T/CAPA 009-2023面部埋线提升技术操作规范
- 塑胶料品质协议书
- 2025届江苏省苏州市高三9月期初阳光调研-语文试卷(含答案)
- 旅行地接协议书
- DB3707T 120-2024无特定病原凡纳滨对虾种虾循环水养殖技术规范
- 安全课件小学
- 租房协议书合同txt
评论
0/150
提交评论