面向对象编程面向接口

面向对象编程面向接口

ID:37605666

大小:1.54 MB

页数:48页

时间:2019-05-13

面向对象编程面向接口_第1页
面向对象编程面向接口_第2页
面向对象编程面向接口_第3页
面向对象编程面向接口_第4页
面向对象编程面向接口_第5页
资源描述:

《面向对象编程面向接口》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

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方法,但没有具体实现实现这

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。