- 1、本文档共25页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
2掌握Java接口理解Java接口与多态的关系掌握面向接口编程的思想掌握常量接口的使用
3电脑主板上的PCI插槽的规范就类似于Java接口声卡显卡网卡每种卡的内部结构都不相同,可以把声卡、网卡、显卡都插在PCI插槽上,而不用担心哪个插槽是专门插哪个卡的主板
4一个Java接口是一些方法特征的集合,但没有方法的实现publicinterfacePCI{
??publicvoidstart();?publicvoidstop();
}classSoundCardimplementsPCI{publicvoidstart()??{
????System.out.println(Dudu...);
??}
??publicvoidstop()??{
????System.out.println(Soundstop!);
??}
}Java接口中定义的方法在不同的地方被实现,可以具有完全不同的行为这是Java接口,相当于主板上的PCI插槽的规范classNetworkCardimplementsPCI{publicvoidstart()??{
????System.out.println(Send...);
??}
??publicvoidstop()??{
????System.out.println(Networkstop!);
??}
}声卡、网卡都实现了PCI插槽的规范,但行为完全不同
5publicclassAssembler{
??publicstaticvoidmain(String[]args){
????PCInc=newNetworkCard();
????PCIsc=newSoundCard();
nc.start();sc.start();??}
}可以使用Java接口标识类型运行时,根据实际创建的对象类型调用相应的方法实现Dudu...Send...控制台输出21
6为各中心开发这样一个小系统,包含类型:教员、中心、打印机,具体要求如下:教员、以及中心都具有方法:输出详细信息中心具有属性:打印机,能够通过中心的打印机打印教员或中心的详细信息系统要具备良好的可扩展性与可维护性打印教员中心教员
详细信息中心
详细信息detail方法(输出详细信息)
7以下这个解决方案中存在着什么问题?publicclassTeacher1{//输出教员的详细信息publicStringdetail(){ return本人是教员;}}publicclassSchool1{privatePrinterprinter=newPrinter();//输出中心的详细信息publicStringdetail(){return这里是中心;}//使用打印机打印教员信息publicvoidprint(Teacher1t){printer.print(t.detail());}//使用打印机打印中心信息publicvoidprint(School1s){ printer.print(s.detail());}}publicclassPrinter{publicvoidprint(Stringcontent){System.out.println(开始打印:);System.out.println(content);}}每增加一种新类型,都需要增加相应的print(类型名称var)方法——程序的可扩展性及可维护性极差——这不符合系统的要求
8可以通过多态性解决这个问题吗?显然,本系统符合使用多态性的条件教员中心detail方法(负责输出详细信息)教员
详细信息中心
详细信息1221回顾多态的含义:实现同一个接口,使用不同的实例而执行不同操作
9在这个系统中,存在继承关系吗?教员、中心属于两种不同的类型,无法通过“is-a”找到一个合适的父类教员、中心都存在一个共同的方法特征:detail,它们对detail方法有各自不同的实现——这完全符合Java接口的定义定义一个Java接口,在其中定义detail方法,但没有具体实现实现这个Java接口,不同的类对detail方法有不同的具体实现IntroduceableTeacher2(教员)School2(中心)
10publicinterfaceIntroduceable{publicStringdetail();}p
1亿VIP精品文档
相关文档
最近下载
- 超长航时太阳能无人机关键技术综述.docx VIP
- 南京林业大学《概率论与数理统计》2022-2023学年第一学期期末考试试卷.docx
- 2024年浙江省中等职业学校职业能力大赛(学生职业素养类)“创新创效创业”项目(学校选拔)试题库(带答案).docx
- Unit4中译英单词默写表Excel版 译林牛津版高中英语选择性必修第一册.docx VIP
- 吉林大学2022-2023学年第2学期《高等数学(下)》期末试卷(A卷)附标准答案.pdf
- 宁煤公司考试试卷题库答案.pdf
- SSD 548U故障解列装置说明书_V1.00【常规标准版】【一元件】【低频低压】【过频过压】【零序过压】.pdf
- 基于stm32的数码相框设计与实现-外文翻译.doc
- PCB出货检验报告_2.doc
- 分析化学(仪器分析)教学课件(全).ppt
文档评论(0)