第8章 面向对象的Java实现-接口.ppt

上传人:s****8 文档编号:67319404 上传时间:2022-12-24 格式:PPT 页数:42 大小:1.98MB
返回 下载 相关 举报
第8章 面向对象的Java实现-接口.ppt_第1页
第1页 / 共42页
第8章 面向对象的Java实现-接口.ppt_第2页
第2页 / 共42页
点击查看更多>>
资源描述

《第8章 面向对象的Java实现-接口.ppt》由会员分享,可在线阅读,更多相关《第8章 面向对象的Java实现-接口.ppt(42页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、面向面向面向面向对对象的象的象的象的JavaJava实现实现-接口接口接口接口第八章第八章第八章第八章2回顾回顾举例说明在什么样的情况下,需要使用到继承?举例说明在什么样的情况下,需要使用到继承?在在Java程序中,多态性带给我们的好处是什么?程序中,多态性带给我们的好处是什么?3预习检查预习检查什么是常量?什么是常量?Java中,常量的定义规则有哪些?中,常量的定义规则有哪些?什么是面向接口编程,它的好处是什么?什么是面向接口编程,它的好处是什么?4本章任务本章任务升级升级HelloACCP,打印,打印ACCP中心与教员的详细信息:中心与教员的详细信息:正确使用面向接口编程的思想正确使用面向

2、接口编程的思想提高系统的可扩展性及可维护性提高系统的可扩展性及可维护性5掌握掌握Java接口接口理解理解Java接口与多态的关系接口与多态的关系掌握面向接口编程的思想掌握面向接口编程的思想掌握常量接口的使用掌握常量接口的使用本章目标本章目标抽象类抽象类可以使用可以使用abstract来修饰一个类和方法来修饰一个类和方法用用abstract修饰的类表示这个类是一个抽象类,用修饰的类表示这个类是一个抽象类,用abstract修饰的方法表示这个方法是一个抽象方法。修饰的方法表示这个方法是一个抽象方法。抽象类不能被实例化抽象类不能被实例化抽象方法是只有方法声明,而没有实现的方法。抽象方法是只有方法声明

3、,而没有实现的方法。构造方法、静态方法、私有方法、构造方法、静态方法、私有方法、final方法不能被声明为方法不能被声明为抽象的方法。抽象的方法。6抽象类的例子抽象类的例子publicabstractclassShape/*画出自己画出自己*/publicabstractvoiddraw();/*得到面积得到面积*/publicdoublegetArea()return100.0;7抽象类(抽象类(abstractclass)抽象类里面并非一定需要抽象方法,但是没有抽象方法,抽象类里面并非一定需要抽象方法,但是没有抽象方法,抽象类就没有存在的必要抽象类就没有存在的必要在以下任一条件成立时,类必

4、须定义成抽象类:在以下任一条件成立时,类必须定义成抽象类:类中有至少一个抽象方法类中有至少一个抽象方法类继承了父类中的抽象方法,但是至少有一个抽象方法没有实现类继承了父类中的抽象方法,但是至少有一个抽象方法没有实现类实现了某个接口,但没有全部实现接口中的方法类实现了某个接口,但没有全部实现接口中的方法8创建抽象类的对象创建抽象类的对象抽象类不可实例化抽象类不可实例化如果从一个抽象类继承,并想创建该新类的对象,那么我如果从一个抽象类继承,并想创建该新类的对象,那么我们就必须为基类中的所有抽象方法提供方法定义。们就必须为基类中的所有抽象方法提供方法定义。如果不这样做(可以选择不做),那么抽象类的子

5、类便也如果不这样做(可以选择不做),那么抽象类的子类便也是抽象类,且编译器将会强制我们用是抽象类,且编译器将会强制我们用abstract关键字来限关键字来限制修饰这个类。制修饰这个类。创建抽象类的对象创建抽象类的对象扩展抽象类,实现其所有抽象方法扩展抽象类,实现其所有抽象方法创建该抽象类子类的对象创建该抽象类子类的对象9抽象类的使用例子抽象类的使用例子publicclassCircleextendsShapepublicvoiddraw()System.out.println(drawacircle.);TestShape.javapublicstaticvoidmain(Stringargs

6、)/Shapeshape=newShape();/errorShapeshape=newCircle();shape.draw();System.out.println(shape.getArea();10接口(接口(interface)接口接口(interface)比抽象比抽象(abstract)的概念向前更迈进了一的概念向前更迈进了一步。你可以将它看作是步。你可以将它看作是“纯粹的纯粹的”抽象类。抽象类。它允许类的创建者为一个类建立其形式:有方法名、参数它允许类的创建者为一个类建立其形式:有方法名、参数列表和返回类型,但是没有任何方法体。接口也可以包含列表和返回类型,但是没有任何方法体。接

7、口也可以包含有数据成员。有数据成员。接口只提供了形式,而未提供任何具体实现。接口只提供了形式,而未提供任何具体实现。接口是方法和常量值的定义的集合。接口是方法和常量值的定义的集合。11接口的定义接口的定义修饰符修饰符interface接口名接口名extends父接口名表父接口名表修饰符修饰符域类型域名常量值;域类型域名常量值;/常量域声明常量域声明修饰符修饰符返回值方法名返回值方法名(参数表参数表);/抽象方法声明抽象方法声明因为所有定义在接口中的因为所有定义在接口中的常量常量都默认为都默认为public、static和和final。所有定义在接口中的。所有定义在接口中的方法方法默认为默认为p

8、ublic和和abstract,所以可以不用修饰符限定它们。,所以可以不用修饰符限定它们。和类不同的是,和类不同的是,一个接口可以继承多个父接口一个接口可以继承多个父接口.12接口例子接口例子publicinterfaceIShape/面积面积doublearea=100.0;/画出自己画出自己voiddraw();/得到面积得到面积doublegetArea();13实现接口实现接口多个无关的类可实现同一个接口。多个无关的类可实现同一个接口。一个类可实现多个无关的接口一个类可实现多个无关的接口语法如下:语法如下:classextendsimplements,*在在Java中,可以通过接口来模

9、拟多继承中,可以通过接口来模拟多继承14接口应用例子接口应用例子publicclassCircleimplementsIShapepublicvoiddraw()System.out.println(drawacircle.);publicdoublegetArea()/area=200.0;errorreturnarea;Main:IShapeshape=newCircle();shape.draw();System.out.println(shape.getArea();15实现接口注意事项实现接口注意事项在类的声明部分,用在类的声明部分,用implements关键字声明将要实现那关键字声

10、明将要实现那些接口;些接口;如果实现某接口的类不是如果实现某接口的类不是abstract类,则在类的定义部分类,则在类的定义部分必须实现指定接口的所有抽象方法,而且方法头部分应该必须实现指定接口的所有抽象方法,而且方法头部分应该与接口中的定义完全一致;与接口中的定义完全一致;如果实现某接口的类是如果实现某接口的类是abstract类,则它可以不实现该接类,则它可以不实现该接口所有的方法。但其非口所有的方法。但其非abstract的子类中必须有所有抽象的子类中必须有所有抽象方法的实在的方法体;方法的实在的方法体;接口的抽象方法的访问控制符都已指定为接口的抽象方法的访问控制符都已指定为public

11、,因此,因此,类在实现方法时,必须显式地使用类在实现方法时,必须显式地使用public修饰符。否则,修饰符。否则,将缩小接口定义方法的访问控制范围。将缩小接口定义方法的访问控制范围。(报错报错)1617生活中的接口生活中的接口电脑主板上的电脑主板上的PCI插槽的规范就类似于插槽的规范就类似于Java接口接口声卡声卡显卡显卡网卡网卡每种卡的内部结构都不相同,可以把声卡、每种卡的内部结构都不相同,可以把声卡、网卡、显卡都插在网卡、显卡都插在PCI插槽上,而不用担心哪插槽上,而不用担心哪个插槽是专门插哪个卡的个插槽是专门插哪个卡的主板主板18什么是什么是Java接口接口2-1一个一个Java接口是一

12、些方法特征的集合,但没有方法的实现接口是一些方法特征的集合,但没有方法的实现publicinterfacePCIpublicvoidstart();publicvoidstop();classSoundCardimplementsPCIpublicvoidstart()System.out.println(Dudu.);publicvoidstop()System.out.println(Soundstop!);Java接口中定义的方法在不同的地方被实现,可以具有接口中定义的方法在不同的地方被实现,可以具有完全不同的行为完全不同的行为这是这是Java接口,相当于主接口,相当于主板上的板上的PC

13、I插槽的规范插槽的规范classNetworkCardimplementsPCIpublicvoidstart()System.out.println(Send.);publicvoidstop()System.out.println(Networkstop!);声卡、网卡都实现了声卡、网卡都实现了PCI插槽的规范,但行为完全不同插槽的规范,但行为完全不同19什么是什么是Java接口接口2-2publicclassAssemblerpublicstaticvoidmain(Stringargs)PCInc=newNetworkCard();PCIsc=newSoundCard();nc.sta

14、rt();sc.start();可以使用可以使用Java接口标识类型接口标识类型运行时,根据实际创建的对象类型调用相应的方法实现运行时,根据实际创建的对象类型调用相应的方法实现Dudu.Send.控制台输出控制台输出2120为什么需要为什么需要Java接口接口5-1为为ACCP各中心开发这样一个小系统,包含类型:教员、各中心开发这样一个小系统,包含类型:教员、中心、打印机,具体要求如下:中心、打印机,具体要求如下:教员、以及中心都具有方法:输出详细信息教员、以及中心都具有方法:输出详细信息中心具有属性:打印机,能够通过中心的打印机打印教员或中中心具有属性:打印机,能够通过中心的打印机打印教员或

15、中心的详细信息心的详细信息系统要具备良好的可扩展性与可维护性系统要具备良好的可扩展性与可维护性打印打印教员教员中心中心教员教员详细信息详细信息中心中心详细信息详细信息detail方法方法(输出详细信息)(输出详细信息)21为什么需要为什么需要Java接口接口5-2以下这个解决方案中存在着什么问题?以下这个解决方案中存在着什么问题?publicclassAccpTeacher1/输出教员的详细信息输出教员的详细信息publicStringdetail()return本人是本人是ACCP教员教员;publicclassAccpSchool1privatePrinterprinter=newPrin

16、ter();/输出中心的详细信息输出中心的详细信息publicStringdetail()return这里是这里是ACCP中心中心;/使用打印机打印教员信息使用打印机打印教员信息publicvoidprint(AccpTeacher1t)printer.print(t.detail();/使用打印机打印中心信息使用打印机打印中心信息publicvoidprint(AccpSchool1s)printer.print(s.detail();publicclassPrinterpublicvoidprint(Stringcontent)System.out.println(开始打印:开始打印:);

17、System.out.println(content);每增加一种新类型,都需要增加相应的每增加一种新类型,都需要增加相应的print(类型名称类型名称var)方法方法程序的可扩展性及可维护性极差程序的可扩展性及可维护性极差这不符合系统的要求这不符合系统的要求22为什么需要为什么需要Java接口接口5-3可以通过多态性解决这个问题吗可以通过多态性解决这个问题吗?显然,本系统符合使用多态性的条件显然,本系统符合使用多态性的条件教员教员中心中心detail方法方法(负责输出详细信息)(负责输出详细信息)教员教员详细信息详细信息中心中心详细信息详细信息1221回顾多态的含义:回顾多态的含义:实现同一

18、个接口,使用不同的实例而执行不同操作实现同一个接口,使用不同的实例而执行不同操作23为什么需要为什么需要Java接口接口5-4在这个系统中,存在继承关系吗?在这个系统中,存在继承关系吗?教员、中心属于两种不同的类型,无法通过教员、中心属于两种不同的类型,无法通过“is-a”找到一个合找到一个合适的父类适的父类教员、中心都存在一个共同的方法特征:教员、中心都存在一个共同的方法特征:detail,它们对,它们对detail方法有各自不同的实现方法有各自不同的实现这完全符合这完全符合Java接口的接口的定义定义定义一个定义一个Java接口,在其中定义接口,在其中定义detail方法,但没有具体实现方

19、法,但没有具体实现实现这个实现这个Java接口,不同的类对接口,不同的类对detail方法有不同的具体实现方法有不同的具体实现IntroduceableAccpTeacher2(教员教员)AccpSchool2(中心中心)24为什么需要为什么需要Java接口接口5-5publicinterfaceIntroduceablepublicStringdetail();publicclassAccpSchool2implementsIntroduceableprivatePrinterprinter=newPrinter();/输出中心的详细信息输出中心的详细信息publicStringdetail

20、()return这里是这里是ACCP中心中心;/使用中心打印机打印信息使用中心打印机打印信息publicvoidprint(Introduceableintro)printer.print(intro.detail();publicclassAccpTeacher2implementsIntroduceable/输出教员的详细信息输出教员的详细信息publicStringdetail()return本人是本人是ACCP教员教员;通过通过Java接口,我们同样可以享受到多态性的好处,大大提高了接口,我们同样可以享受到多态性的好处,大大提高了程序的可扩展性及可维护性程序的可扩展性及可维护性使用使用

21、print方法时,参数可以是任何方法时,参数可以是任何Introduceable接口的实现类接口的实现类的对象,不必再为不同的类型建立不同的的对象,不必再为不同的类型建立不同的print方法了方法了使用了使用了Java接口之后,这个系统有了怎样的改进?接口之后,这个系统有了怎样的改进?25小结小结1为刚才完成的系统增加一种新的类型:学员为刚才完成的系统增加一种新的类型:学员(AccpStudent),具体要求如下:),具体要求如下:学员具有学员具有detail方法,负责输出学员详细信息方法,负责输出学员详细信息能够通过中心的打印机打印学员的详细信息能够通过中心的打印机打印学员的详细信息系统要具

22、备良好的可扩展性与可维护性系统要具备良好的可扩展性与可维护性编写测试类编写测试类StudentTest进行测试,要求:进行测试,要求:通过中心的打印机打印学员的详细信息通过中心的打印机打印学员的详细信息StudentTest完整代码实现完整代码实现AccpStudent完整代码实现完整代码实现26什么是面向接口编程什么是面向接口编程开发系统时,主体构架使用接口,接口构成系统的骨架开发系统时,主体构架使用接口,接口构成系统的骨架这样就可以通过更换接口的实现类来更换系统的实现这样就可以通过更换接口的实现类来更换系统的实现publicclassAccpSchool2implementsIntrodu

23、ceableprivatePrinterprinter=newPrinter();publicStringdetail()return这里是这里是ACCP中心中心;/使用中心打印机打印信息使用中心打印机打印信息publicvoidprint(Introduceableintro)printer.print(intro.detail();IntroduceableAccpTeacher2(教员教员)AccpSchool2(中心中心)27面向接口编程的示例面向接口编程的示例4-1升级上述的升级上述的ACCP系统,要求:系统,要求:打印机有多种类型,比如:黑白打印机、彩色打印机等打印机有多种类型,比

24、如:黑白打印机、彩色打印机等中心可能配备其中任意一款打印机,负责打印教员、或者中心中心可能配备其中任意一款打印机,负责打印教员、或者中心的详细信息的详细信息系统要具备良好的可扩展性与可维护性系统要具备良好的可扩展性与可维护性print方法方法(打印)(打印)彩色打印机彩色打印机黑白打印机黑白打印机黑白内容黑白内容中心中心/教员教员详细信息详细信息彩色内容彩色内容28面向接口编程的示例面向接口编程的示例4-2采用面向接口编程的方式实现,以下是三个步骤中的第一步:采用面向接口编程的方式实现,以下是三个步骤中的第一步:抽象出抽象出Java接口接口1、分析:、分析:黑白、彩色打印机都存在一个共同的方法

25、特征:黑白、彩色打印机都存在一个共同的方法特征:print黑白、彩色打印机对黑白、彩色打印机对print方法有各自不同的实现方法有各自不同的实现2、结论:、结论:抽象出抽象出Java接口接口PrinterFace,在其中定义方法,在其中定义方法print3、具体实现:、具体实现:publicinterfacePrinterFacepublicvoidprint(Stringcontent);29面向接口编程的示例面向接口编程的示例4-3采用面向接口编程的方式实现,以下是三个步骤中的第二步:采用面向接口编程的方式实现,以下是三个步骤中的第二步:publicclassColorPrinterimp

26、lementsPrinterFacepublicvoidprint(Stringcontent)System.out.println(彩色打印:彩色打印:);System.out.println(content);publicclassBlackPrinterimplementsPrinterFacepublicvoidprint(Stringcontent)System.out.println(黑白打印:黑白打印:);System.out.println(content);实现实现Java接口接口1、分析:分析:已经抽象出已经抽象出Java接口接口PrinterFace,并在其中定义了,并在

27、其中定义了print方法方法黑白、彩色打印机对黑白、彩色打印机对print方法有各自不同的实现方法有各自不同的实现2、结论:、结论:黑白、彩色打印机都实现黑白、彩色打印机都实现PrinterFace接口,各自实现接口,各自实现print方法方法3、具体实现:、具体实现:30面向接口编程的示例面向接口编程的示例4-4采用面向接口编程的方式实现,以下是三个步骤中的第三步:采用面向接口编程的方式实现,以下是三个步骤中的第三步:使用使用Java接口接口1、分析:分析:主体构架使用接口主体构架使用接口,让接口构成系统的骨架让接口构成系统的骨架2、结论:、结论:更换实现接口的类就可以更换系统的实现更换实现

28、接口的类就可以更换系统的实现3、具体实现:、具体实现:publicclassAccpSchool3implementsIntroduceableprivatePrinterFaceprinter;/打印机打印机publicvoidsetPrinter(PrinterFacep)this.printer=p;publicStringdetail()return这里是这里是ACCP中心中心;publicvoidprint(Introduceableintro)printer.print(intro.detail();publicclassAccpTestpublicstaticvoidmain(S

29、tringargs)/创建中心实例创建中心实例AccpSchool3school=newAccpSchool3();/为该中心配备黑白打印机为该中心配备黑白打印机school.setPrinter(newBlackPrinter();school.print(school);/为该中心配备彩色打印机为该中心配备彩色打印机school.setPrinter(newColorPrinter();school.print(school);31小结小结2阅读如下阅读如下Java代码,然后请采用面向接口编程的思代码,然后请采用面向接口编程的思想,在空白处填写正确的代码想,在空白处填写正确的代码publi

30、cinterfacePCIvoidstart();voidstop();classSoundCardimplementsPCIpublicvoidstart()System.out.println(Dudu.);publicvoidstop()System.out.println(Soundstop!);classNetworkCardimplementsPCIpublicvoidstart()System.out.println(Send.);publicvoidstop()System.out.println(Networkstop!);这是这是Java接口,相当于主接口,相当于主板上的板

31、上的PCI插槽的规范插槽的规范声卡、网卡都实现了声卡、网卡都实现了PCI插槽的规范,但行为完全不同插槽的规范,但行为完全不同32小结小结2publicclassMainBoardpublicvoidusePCICard(_p)p.start();p.stop();publicclassAssemblerpublicstaticvoidmain(Stringargs)MainBoardmb=newMainBoard();/在主板上插入网卡在主板上插入网卡/在主板上插入声卡在主板上插入声卡提示:通过这个方法,主板上提示:通过这个方法,主板上可以插入任意符合可以插入任意符合PCI插槽规插槽规范的卡范

32、的卡PCInc=newNetworkCard();mb.usePCICard(nc);PCIsc=newSoundCard();mb.usePCICard(sc);PCI提示:可以通过更换实现接口的类提示:可以通过更换实现接口的类来更换系统的实现来更换系统的实现33为什么需要常量为什么需要常量生活中,一周有七天,如何用代码表示?生活中,一周有七天,如何用代码表示?publicclassWeekprivateintdays=7;publicstaticvoidmain(Stringargs)Weekw=newWeek();System.out.println(一周有一周有+w.days+天天);

33、publicclassWeekprivateintdays=7;publicstaticvoidmain(Stringargs)Weekw=newWeek();w.days+;System.out.println(一周有一周有+w.days+天天);一周有一周有7天天控制台输出控制台输出然而,总有不尽人意的事情发生:然而,总有不尽人意的事情发生:一周有一周有8天天控制台输出控制台输出如何保证变量的值在运行期无法被改变?如何保证变量的值在运行期无法被改变?使用常量使用常量34什么是常量什么是常量常量是一种标识符,它的值在运行期间恒定不变常量是一种标识符,它的值在运行期间恒定不变常量标识符在程序中

34、只能被引用,而不能被重新赋值常量标识符在程序中只能被引用,而不能被重新赋值常量常量圆周率圆周率PI圆周率圆周率PI代码表示代码表示方式方式publicstaticfinaldoublePI=3.14159265358979323846;用法用法将将ang角度转换成径度角度转换成径度publicstaticdoubletoRadians(doubleang)returnang/180.0*PI;35常量的优点常量的优点如果不使用常量,直接在程序中填写数字或字符串,将会如果不使用常量,直接在程序中填写数字或字符串,将会有什么麻烦?有什么麻烦?publicstaticdoubletoRadians(

35、doubleang)returnang/180.0*3.14159265358979323846;publicstaticdoubletoDegrees(doubleang)returnang*180.0/3.14159265358979323846;publicstaticfinaldoublePI=3.14159265358979323846;/圆周率圆周率publicstaticdoubletoRadians(doubleang)returnang/180.0*PI;publicstaticdoubletoDegrees(doubleang)returnang*180.0/PI;程序的可

36、读性变差:用程序的可读性变差:用户很难理解数字或字符户很难理解数字或字符串的意思串的意思程序的可维护性变差:如程序的可维护性变差:如果数值改变,则需要在很果数值改变,则需要在很多地方改动,既麻烦又易多地方改动,既麻烦又易出错出错使用常量可以增强程序的可读性、可维护性使用常量可以增强程序的可读性、可维护性36Java中常量的定义规则中常量的定义规则加入加入final关键字代表常量,关键字代表常量,加入加入static关键字代表类变量关键字代表类变量尽量使用含义直观的常量来表示那些将在程序中多次出现尽量使用含义直观的常量来表示那些将在程序中多次出现的数字或字符串的数字或字符串publicclass

37、AccpStudentpublicstaticfinalintFEMALE=1;/代表女性代表女性publicstaticfinalintMALE=2;/代表男性代表男性privateintsex;/性别性别publicvoidsetSex(intsex)if(sex=FEMALE)System.out.println(这是一名女学生这是一名女学生);elseif(sex=MALE)System.out.println(这是一名男学生这是一名男学生);this.sex=sex;37在在Java接口中声明常量接口中声明常量在在Java接口中声明的变量在编译时会自动加上接口中声明的变量在编译时会自

38、动加上staticfinal的修饰符,即声明为常量,因而的修饰符,即声明为常量,因而Java接口通常是存放接口通常是存放常量的最佳地点常量的最佳地点publicinterfaceAccpSchoolTypepublicstaticfinalStringACCP=ACCP加盟中心加盟中心;publicstaticfinalStringBENET=BENET直营中心直营中心;publicinterfaceAccpSchoolTypeStringACCP=ACCP加盟中心加盟中心;StringBENET=BENET直营中心直营中心;等同于等同于38小结小结3编写一个用于放置常量的编写一个用于放置常量

39、的Java接口接口Constants,具有常,具有常量量MAX和和MIN编写一个测试类编写一个测试类ConstantsTest,在,在main方法中求取方法中求取Constants中的两个常量之差中的两个常量之差Constants完整代码实现完整代码实现ConstantsTest完整代码实现完整代码实现39OO思想总结思想总结OO基本基本特征特征定义定义具体实现方式具体实现方式优势优势封装封装隐藏实现细节,对外提供隐藏实现细节,对外提供公共的访问接口公共的访问接口属性私有化、添加公有的属性私有化、添加公有的setter、getter方法方法增强代码的可维增强代码的可维护性护性继承继承从一个已有

40、的类派生出新从一个已有的类派生出新的类,子类具有父类的一的类,子类具有父类的一般特性,以及自身特殊的般特性,以及自身特殊的特性特性继承需要符合的关系:继承需要符合的关系:is-a1、实现抽象(抽、实现抽象(抽出像的部分)出像的部分)2、增强代码的可、增强代码的可复用性复用性多态多态同一个实现接口,使用不同一个实现接口,使用不同的实例而执行不同操作同的实例而执行不同操作通过通过Java接口接口/继承来定义继承来定义统一的实现接口;通过方法统一的实现接口;通过方法重写为不同的实现类重写为不同的实现类/子类定子类定义不同的操作义不同的操作增强代码的可扩增强代码的可扩展性、可维护性展性、可维护性40总

41、结总结publicinterfaceIntroduceablepublicStringdetail();publicvoidintroduction()detail();privatevoidshowMessage();voidspeak();Java接口中的方法必须是接口中的方法必须是publicJava接口中不能有方法体实现接口中不能有方法体实现编译器会自动加上编译器会自动加上public修饰符修饰符请指出下列请指出下列Java代码中的错误。代码中的错误。作业作业有三角形有三角形,矩形矩形,圆圆,椭圆椭圆,分别求出各自的周长分别求出各自的周长,面积面积要求先使用要求先使用abstract实现实现,再使用再使用interface实现实现.41Question?

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 生活休闲 > 生活常识

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁