欢迎来到天天文库
浏览记录
ID:37605666
大小:1.54 MB
页数:48页
时间:2019-05-13
《面向对象编程面向接口》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、第六章节:面向对象编程接口与设计模式回顾举例说明在什么样的情况下,需要使用到继承?在Java程序中,多态带给我们的好处是什么?www.cssxt.com掌握Java接口理解Java接口与多态的关系掌握面向接口编程的思想掌握常量接口的使用设计模式本章目标www.cssxt.com单一继承的局限性1、如下的类图描述正确吗?2、青蛙是两栖动物,怎么办呢?我该何处何从……www.cssxt.com什么是Java接口接口与前面所学的抽象类一样是一种规范和标准、可以约束类的行为定义一个接口不指定具体的实现一个Java接口是一些方法特征的集合,但没有方法的实现Ja
2、va接口中定义的方法在不同的地方被实现,可以具有完全不同的行为www.cssxt.com一个例子www.cssxt.com一个实例publicinterfacePCI{publicvoidstart();publicvoidstop();}classSoundCardimplementsPCI{publicvoidstart(){System.out.println("Dudu...");}publicvoidstop(){System.out.println("Soundstop!");}}这是Java接口,相当于主板上的PCI插槽的规范cla
3、ssNetworkCardimplementsPCI{publicvoidstart(){System.out.println("Send...");}publicvoidstop(){System.out.println("Networkstop!");}}声卡、网卡都实现了PCI插槽的规范,但行为完全不同www.cssxt.com一个实例publicclassAssembler{publicstaticvoidmain(String[]args){PCInc=newNetworkCard();PCIsc=newSoundCard();nc.st
4、art();sc.start();}}可以使用Java接口标识类型运行时,根据实际创建的对象类型调用相应的方法实现Dudu...Send...控制台输出21www.cssxt.com生活中的接口USB接口使用USB接口必须符合USB规范接口是一套规范,遵守这个规范就可以实现功能www.cssxt.com接口的特点JAVA中一个类能否继承多个父类?接口:接口可以说是对继承单根性的扩展接口提供了一组规范、一个标准接口屏蔽了实现的细节方便多人协同开发特点:接口不能被实例化不管是否标识,接口中所有方法都是抽象的,公共的。接口中只能定义常量www.cssxt
5、.com用接口实现让我们为青蛙找一个合法的身份?www.cssxt.comJAVA接口开发这样一个小系统,包含类型:教员、中心、打印机,具体要求如下:教员、以及中心都具有方法:输出详细信息中心具有属性:打印机,能够通过中心的打印机打印教员或中心的详细信息系统要具备良好的可扩展性与可维护性打印教员中心教员详细信息中心详细信息detail方法(输出详细信息)www.cssxt.comJAVA接口以下这个解决方案中存在着什么问题?publicclassUCSTeacher1{//输出教员的详细信息publicStringdetail(){return"
6、本人是CSU教员";}}publicclassUCSSchool1{privatePrinterprinter=newPrinter();//输出中心的详细信息publicStringdetail(){return"这里是CSU中心";}//使用打印机打印教员信息publicvoidprint(UCSTeacher1t){printer.print(t.detail());}//使用打印机打印中心信息publicvoidprint(UCSSchool1s){printer.print(s.detail());}}publicclassPrinter{
7、publicvoidprint(Stringcontent){System.out.println("开始打印:");System.out.println(content);}}每增加一种新类型,都需要增加相应的print(类型名称var)方法——程序的可扩展性及可维护性极差——这不符合系统的要求www.cssxt.com用Java接口重构项目在这个系统中,存在继承关系吗?教员、中心属于两种不同的类型,无法通过“is-a”找到一个合适的父类教员、中心都存在一个共同的方法特征:detail,它们对detail方法有各自不同的实现——这完全符合Java接
8、口的定义www.cssxt.com类图定义一个Java接口,在其中定义detail方法,但没有具体实现实现这
此文档下载收益归作者所有