java语言08(接口与多态)

java语言08(接口与多态)

ID:34388730

大小:140.20 KB

页数:25页

时间:2019-03-05

java语言08(接口与多态)_第1页
java语言08(接口与多态)_第2页
java语言08(接口与多态)_第3页
java语言08(接口与多态)_第4页
java语言08(接口与多态)_第5页
资源描述:

《java语言08(接口与多态)》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第6章接口与多态6.1接口Java中的接口就是定义了若干个抽象方法和常量,形成一个属性集合,该属性集合通常对应某一组功能,可以实现类似于类的多重继承功能。其格式为:6.11接口的声明与使用1.接口声明[public]interface接口名[extends父接口名列表]{//接口体//常量声明//抽象方法声明}2.接口体  接口体中包含常量的声明和方法定义两部分。接口声明时的注意事项1.在Java中接口是一种专门的类型,用interface关键字定义接口。2.接口中只能定义抽象方法,而且访问权限一定是公有的,在定义时可省略publi

2、c和abstract修饰符。3.接口中可以定义变量,但实际上是publicfinal修饰的常量。4.接口中不能定义静态方法。3.接口的使用•在Java语言中,接口由类去实现以便使用接口中的方法,一个类可以实现多个接口,类通过使用关键字implements声明自己实现一个或多个接口。如果实现多个接口,则用逗号隔开接口名。•如果一个类实现了某个接口,那么这个类必须重写该接口的所有方法。需要注意的是,重写接口的方法时,接口中的方法一定是publicabstract方法,所以类在重写接口方法 时不仅要去掉abstract修饰、给出方法体,而

3、且方法访问权限一定要显式地用显式地用publicpublic来修饰来修饰。•类重写的接口方法以及接口中的常量可以被类的对象调用,而且常量也可以用类名或接口名直接调用。•接口声明时,如果关键字interface前加下public,就称这样的接口是一个public接口。public接口可以被任何一个类实现。如果一个接口不加public修饰,就是友好接口,只能被同一包中的类实现。•如果实现了某个接口,那么子类也就自然实现了该接口,子类不必于地使用关键字implements声明实现这个接口。•如果一个类声明实现一个接口,但没有重写串的所有方

4、法,那么这个类必须是abstract类。例:接口的使用•interfacecomputable•{•intMAX=100;•intf(intx);•}•classchinaimplementscomputable•{•intnumber;•publicintf(intx)•{•returnx+43;•}•}•publicclassexample6•{•publicstaticvoidmain(Stringargs[])•{•chinac=newchina();•c.number=48+computable.MAX;•System.o

5、ut.println("Chinesestudent:"+c.f(4));•}接口的继承性•与类相仿,接口也具有继承性。定义一个接口时可以通过extends关键字声明该新接口是某个已经存在的父接口的派生接口,它将继承父接口的所有属性和方法。•与类的继承不同的是一个接口可以有一个以上父接口,它们之间用逗号分隔,形成父接口列表。新接口将继承所有父接口中属性和方法。类实现接口的注意事项1.在类的声明部分,用implements关键字声明该类将要实现哪些接口。2.如果实现某接口的类不是abstract抽象类,则在类的定义部分必须实现指定接口

6、所有抽象方法。3.如果实现某接口的类是abstract的抽象类,则它可以不实现该接口所有的方法。4.一个类在实现某接口的抽象方法时,必须使用完全相同的方法名。5.接口抽象访问限制符都已制定为public,所以类在实现方法时,必须显式地使用public修饰符。1.interfaceA2.{3.inta=1;4.}5.interfaceB6.{7.intb=2;8.voidpp();9.}interfaceMyInterfaceextendsA,B{}abstractclassAbstractInterfaceExamimplement

7、sA,B{}publicclassInterfaceExamextendsAbstractInterfaceExam//implementsMyInterface//A,B1.publicclassInterfaceExamextendsAbstractInterfaceExamimplementsMyInterfaceA,B2.{3.4.publicstaticvoidmain(String[]args)5.{6.InterfaceExamobj=newInterfaceExam();7.System.out.println("继

8、承接口A中的a="+obj.a);8.obj.pp();9.}10.publicvoidpp()11.{12.System.out.println("继承接口B中的b="+.b);13.}14.}几点说明1.制定模块与模块之间的通信协

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

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

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