- 1、本文档共19页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
Java程序设计基础
抽象类和接口
抽象类和接口主要内容
•9.1抽象类(重点)
•9.2接口(重点)
•9.3内部类
1
教学目标
•能理解抽象类的概念及作用
•能理解接口的概念及作用
•能准确区分接口继承与类继承的不同之处
•能准确区分接口和抽象类的不同及联系
•能使用接口和抽象类实现面向基类的编程思想
•能理解内部类的概念及作用
•能正确使用成员内部类,静态内部类,局部内部类、匿名内部类等四种类型的内部类
•能使用接口和抽象类提高程序的复用度
2
抽象类简介
•除了前面介绍的类以外,还存在一种特殊的类——抽象类。如果在类的定义中存在着一
些抽象的方法,那么这种类就称为抽象类。语法上,抽象类是不能用于实例化对象的。
•抽象类往往用来表示抽象概念。
•举个例子,中国人(Chinese类)和美国人(American类)都有“吃饭”这个行为,因
此可以先定义一个Person类,然后让Chinese和American都继承这个类。但如何在
父类Person中定义“吃饭”这个方法呢?一般而言,中国人是用筷子吃饭,并且吃的是
中餐;而美国人是用刀叉吃饭,吃的是西餐,显然二者对于“吃饭”这一行为的具体实现
是不同的。因此,无法在父类Person中具体的定义“吃饭”这一方法。此时,就可以将
Person定义成一个抽象类,并将“吃饭”这个行为定义成抽象方法(只有方法声明,但
没有方法体的方法),然后再在子类Chinese和American中分别对“吃饭”进行具体的
实现。
3
抽象类的语法形式
•在面向对象分析和设计的过程中,经过封装和继承的分析之后,可以先创建一个抽象的
父类,该父类定义了其所有子类共享的一般形式(如Person类),具体细节再由子类
来完成(如Chinese类和American类)。Java中定义抽象类的语法形式如下。
abstractclass类名{}
•Java也提供了一种特殊的方法,这个方法不是一个完整的方法,只含有方法的声明,
没有方法体,这样的方法叫做抽象方法,其语法形式如下。
访问修饰符abstract返回值方法名();
4
抽象类的三个语法特征
•抽象类不能被直接实例化
•抽象类的子类必须实现抽象方法(除非这个子类也是抽象类)
•抽象类里可以有普通方法,也可以有抽象方法,但是有抽象方法的类必须是抽象类。
需要注意的是,抽象类里面也可以没有抽象方法,只是把原来的类前面加上abstract关
键字,使其变为抽象类。例如,以下定义抽象类的代码是符合语法规范的。
5
接口简介
•接口是一系列抽象方法的集合,与抽象类不同,不可以声明普通方法。
•虽然有人常说,接口是一种特殊的抽象类,但是在面向对象编程的设计思想层面,两者
还是有显著区别的。抽象类更侧重于对相似的类进行抽象,形成抽象的父类以供子类继
承使用;而接口往往在程序设计的时候,定义模块与模块之间应满足的规约或者定义一
种标准,使各模块之间能协调工作。
6
接口的定义语法
•Java接口定义的语法形式如下。
[修饰符]interface接口名[extends][接口列表]{接口体}
•interface前的修饰符是可选的,如果使用修饰符,则只能用public修饰符,表示此接
口是公有的,在任何地方都可以引用它,这一点和类是相同
您可能关注的文档
- 硬件电路设计与电子工艺基础(第2版) 集成芯片汇总 课件 第2章 八路NPN达林顿晶体管阵列-ULN2803A ---整流二极管-1N400X.pdf
- 硬件电路设计与电子工艺基础(第2版) 集成芯片汇总 课件 第3章 OCL集成功放-TDA2030-- 双电压比较器-LM393.pdf
- 硬件电路设计与电子工艺基础(第2版) 集成芯片汇总 课件 第4章 3线-8线二进制译码器-74hc138 --- 同步加计数器-74hc160、74hc161.pdf
- 硬件电路设计与电子工艺基础(第2版) 集成芯片汇总 课件 第5章 低压差LDO三端固定电压集成稳压器-1117-3.3 ---- 正电压三端固定集成稳压器-lm78XX.pdf
- 《Java 程序设计基础》 课件 第八章-面向对象的基本特征.pptx
- 《Java 程序设计基础》 课件 第六章-类和对象.pptx
- 《Java 程序设计基础》 课件 第四章-方法与数组.pptx
- 《Java 程序设计基础》 课件 第五章-String 字符串.pptx
- 《Java 程序设计基础》 课件 第一章-初识 Java.pptx
- 2025年河南省登封市事业单位考试(中小学教师类D类)职业能力倾向测验重点难点精练试题完美版.docx
- 2025年湖北省安陆市事业单位考试(中小学教师类D类)职业能力倾向测验强化训练试题集含答案.docx
- 2025年江苏省兴化市事业单位考试(中小学教师类D类)职业能力倾向测验知识点试题及参考答案.docx
- 2025年江苏省宜兴市事业单位公开招聘考试职业能力倾向测验(D类)(中小学教师类)真题完整版.docx
- 2025年吉林省龙井市事业单位考试(中小学教师类D类)职业能力倾向测验试卷新版.docx
- 2025年河南省舞钢市事业单位考试职业能力倾向测验(中小学教师类D类)强化训练题库含答案.docx
- 云南省泸水市职业能力倾向测验事业单位考试(中小学教师类D类)试题参考答案.docx
- 2025年浙江省义乌市职业能力倾向测验事业单位考试(中小学教师类D类)试题最新.docx
- 2025年贵州省兴义市职业能力倾向测验事业单位考试(中小学教师类D类)试题及参考答案1套.docx
- 2025年江西省庐山市职业能力倾向测验事业单位考试(中小学教师类D类)试题完美版.docx
- 2025年江西省共青城市职业能力倾向测验事业单位考试(中小学教师类D类)试题完整版.docx
最近下载
- 特种作业人员安全技术交底(大全).doc
- 2025年高考语文写作复习之读写结合类作文的审题指导(全国通用).pdf VIP
- 人教版高中英语高考语法专题复习虚拟语气.pptx VIP
- 2024宜昌市西陵区葛洲坝街道社区工作者招聘考试真题题库及答案.docx VIP
- WP9H柴油机培训材料(1)(1).pdf VIP
- 工程进度计划与措施.pdf VIP
- 化学计算题(原卷版)-2022-2024年中考化学试题分类汇编(全国通用).pdf VIP
- 2024版发电机采购安装合同协议书范本.docx VIP
- 股东决议范文(29篇).docx VIP
- 中国电子元器件行业深度分析及产业投资战略研究报告.docx
文档评论(0)