java---接口和内部类.ppt

  1. 1、本文档共32页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多

接口和内部类接口接口是抽象类的一种极端情况,即接口中没有任何实现的方法。接口实际上是为所有实现接口的类定义了一个“规格”或一种“协议”,彻底的将实现分离开来。实例:接口接口是抽象类的一种变体,它与抽象类又有一些差异。接口是用关键字interface来定义的,形式为:[修饰符]interface接口名{???//方法和数据声明}接口中的所有方法都是抽象的(abstract可以缺省),没有方法体。必须在接口的子类中重写接口里所有抽象方法。接口接口的创建使用interface关键字,如:publicinterfacePCI{ intnum=124;//常量 voidstart();//方法 voidstop();}接口实质上是一个常量和抽象方法的集合,方法默认属性为:publicabstract;常量默认属性为:publicstaticfinal;接口接口的实现使用implements关键字实现一个接口的类必须实现接口中的所有方法,否则,必须将类定义为抽象类接口 圆形、三角形及图形的关系中,实际上图形的画法是不存在的,因为图形是个抽象的概念,只有具体的到某个具体图形才具有画法,因而可以把图形定义为接口类,而在它的子类圆形、三角形中实现画法,它们的关系如图接口的继承可以通过继承接口创建新的接口使用extends关键字实现接口的继承Java接口与多继承classAextendsB,C{ ……}classAextendsBimplementsC{ ……}接口说明如果一个抽象类中的所有方法都是抽象的,就可以将这个类用另外一种方式来定义,也就是接口定义。接口是抽象方法和常量值的定义的集合,从本质上讲,接口是一种特殊的抽象类,这种抽象类中只包含常量和方法的定义,而没有变量和方法的实现可以使用extends来继承接口的常量和抽象方法,但它与类中的extends不同,它可以继承有多个父接口(多重继承),各父接口间用逗号隔开。接口中的所有常量必须是publicstaticfinal,方法必须是publicabstract,这是系统默认的,不管你在定义接口时,写不写修饰符都是一样的

定义接口

接口定义1,接口中的成员变量默认都是public,static,final类型的(都可省略),必须被显示初始化,即接口中的成员变量为常量(大写,单词之间用_分隔)

2,接口中的方法默认都是public,abstract类型的(都可省略),没有方法体,不能被实例化

publicinterfaceA

??{

???intCONST=1;//合法,CONST默认为public,static,final类型

???voidmethod();//合法,method()默认为public,abstract类型

???publicabstractvoidmethod2();//method2()显示声明为public,abstract类型

??}

接口定义接口中只能包含public,static,final类型的成员变量和public,abstract类型的成员方法

??publicinterfaceA

??{

???intvar;//错,var是常量,必须显示初始化

???voidmethod(){...};??//错,接口中只能包含抽象方法

???protectedvoidmethod2();//错,接口中的方法必须是public类型

???staticvoidmethod3(){...};??//错,接口中不能包含静态方法

??}

接口定义接口中没有构造方法,不能被实例化

??publicinterfaceA

??{

???publicA(){...};//错,接口中不能包含构造方法

???voidmethod();

??}

接口定义一个接口不能实现(implements)另一个接口,但它可以继承多个其它的接口

??publicinterfaceA

??{

???voidmethodA();

??}

??publicinterfaceB

??{

???voidmethodB();

??}

??publicinterfaceCextendsA,B??//C称为复合接口

??{

???voidmethodC();

??}

??publicinterfaceCimplementsA{...}??//错

接口定义接口必须通过类来实

文档评论(0)

iris + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档