已阅读5页,还剩10页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
接口的定义与应用,信息工程学院欧阳宏基,本章内容,1.接口的概念2.接口的定义与注意事项(重点)3.接口在程序开发中的应用(理解)几种简单的设计模式4.抽象类与接口的比较(重点),接口的定义,现实世界的接口:两个不同物体之间要相互交互,必须通过的一个中介,没有这个中介,两者无法交互。软件世界的接口:(1)狭义:某个程序设计语言所提供的API。(2)广义:人与软件交互的图形界面(GUI)。Java中的接口:一种特殊的“类”,只能包含常量和抽象方法,属于引用数据类型。,接口的作用,为什么要定义接口:Java出于安全性考虑,只支持单继承,而不支持多继承。那么就与现实世界相违背。接口的作用:配合继承解决Java无法多继承的缺点,提供方法声明与实现相分离的机制,使实现接口的各个类表现出多态性。Aa=newB();(B是实现了接口A的类),接口的定义,一个接口的定义包含以下部分:publicinterfaceMyInterfaceextendsInterface1publicstaticfinaldoubleE=2.718282;publicabstractvoiddoSomething(inti,doublex);publicabstractintdoSomethingElse(Strings);,访问控制符,接口关键字,接口名,接口可以继承接口,接口中可以定义常量,抽象方法,只声明不实现,接口的实现,接口的实现是交给类来完成的。publicclassMyInterfaceImpextends父类名implements接口名继承了接口中的常量publicvoiddoSomething(inti,doublex)publicintdoSomethingElse(Strings),一个类可以实现多个接口,实现接口的抽象方法,添加方法体,接口的简单应用,定义一个测试类,分别创建圆形类和矩形类的对象,输出各自的面积和周长。,接口的高级应用-设计模式,设计模式针对面向对象系统中重复出现的设计问题,提出一个通用的设计方案,并予以系统化的命名和动机解释。设计模式描述了问题、解决方案、在什么条件下使用该解决方案及其效果。解决方案是解决该问题的一组精心安排的通用的类和接口,再经过定制和实现就可用来解决特定上下文中的问题。,代理模式,应用的场景:一个对象不想或者不能直接引用另外一个对象,那么通过代理可以在两者之间起到连接作用。,(1)抽象目标角色:声明真实目标对象和代理的共同接口。(2)代理角色:内部包含对真实目标对象的引用。(3)真实目标角色:是客户端真正要交流的对象,需要被代理。,适配器模式,使用场景:将一个类的接口(被适配对象)转换成客户希望调用的另外一个接口(目标)。,适配器模式,模式的三种角色:目标(Target):客户想使用的接口。被适配者(Adaptee):一个已经存在的接口或抽象类,需要被适配。适配器(Adapter):是一个类,实现目标接口并包含被适配者的引用。,接口的特点,(1)接口可以定义为多继承。类不能多继承。interfaceAdoublegetArea();interfaceBStringgetName();publicinterfaceCextendsA,BStringgetAddress();(2)接口没有最高层,类有最高层-Object,接口的特点,(3)接口中的方法默认为publicabstract;接口中的成员属性默认为publicstaticfinal。例如:doublePI=3.14f;系统默认为publicstaticfinaldoublePI=3.14159;(4)接口中的方法只能是抽象方法,不存在非抽象方法和构造方法。,抽象类与接口的比较-相同点,(1)都包含抽象方法,必须被子类实现。(2)不能被实例化。(3)都是引用数据类型。可以声明抽象类及接口变量,并将子类的对象赋给抽象类变量。AbstractClassac=new
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025智慧公园建设项目市场发展现状与投资规划评估详细报告
- 2025智慧停车行业市场竞争态势分析及创新发展趋势深度解读研究报告
- 2025智利零售业市场供需动态与投资机遇规划分析发展咨询报告
- 2025智利电动自行车锂电池市场现状供应需求分析投资布局规划分析报告
- 2025新闻媒体行业市场分析竞争态势发展研究报告
- 2025新西兰畜牧业产业国际化市场需求分析投资评估政策法规风险规划报告
- 2025新西兰乳制品产业链监管政策变化分析报告
- 2025新能源行业市场深度调研及发展趋势与投资前景预测研究报告
- 一年级上册数学第七单元综合练习我学会了吗青岛版教案
- 一年级上册唱呀跳呀教案
- 航运大数据分析应用-洞察及研究
- 肾癌病人教育知识培训课件
- 雅马哈DTX430K电子鼓中文说明书
- 2024内蒙古公务员考试行测真题(行政执法类)
- 40个团体心理辅导游戏
- 处方规范书写培训课件
- 咯血病人的护理小讲课
- 科创板开户知识测试题及答案
- 3 1 2 电离平衡常数 练习 人教版(2019)高中化学选择性必修一
- Python图像处理课件
- 勘察设计进度计划及风险防控措施
评论
0/150
提交评论