网站大量收购独家精品文档,联系QQ:2885784924

接口_知识点.doc

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

主要内容: 什么是接口 接口定义语法 接口的实现 接口使用 一个实际例子:Collection接口 接口 接口概念 接口是数据类型. 类是数据类型。使用具体类的名字可以定义类的引用型变量,可以创建对象。对于抽象类,虽然不能创建对象,但是可以定义类的引用型变量。在java语言中还有另一种数据类型,它比抽象类还抽象,这就是接口。 接口构造. 接口由一组抽象方法构成。在设计一个接口时需要指出接口中每个方法的结果类型,方法名,形参表,这些信息都出现在接口定义中。同时还要指出每个方法的功能。方法的功能是用自然语言描述的,当然不能出现在接口的形式定义中,但是这些功能是接口的一部分,是一种约定(contract),所有实现和使用接口的人都必须遵守的约定。 接口与类的比较. 类有域(数据成员)和方法(成员函数),在类的外部可以访问的域和方法构成类的约定,它是类的设计者承诺要完成的工作。一个具体类实现了类的全部约定,而一个抽象类只实现了部分约定。接口也规定了一种约定,但是它完全没有实现这个约定。从这个意义上说,接口是完全没有实现的,最抽象的类。 接口定义语法. [接口修饰符] interface 接口名 [extends 接口1,…,接口n] 接口体 这里 接口修饰符是public和abstract之一。public修饰符表示该接口可以被任何人使用。abstract修饰符已经被废弃,因为所有接口都隐含地被定义成abstract。如果没有接口修饰符,表示该接口是包可访问的。 Interface是java保留字,指示正在定义一个接口。 接口名是一个标识符。 [extends 接口1,…,接口n] 是任选的,表示正在定义的接口继承了接口1,…,接口n,这些接口称为新定义接口的超接口,新定义的接口称为每个超接口的子接口。新定义的接口包含超接口的所有方法。java只支持类的单继承,但是支持接口的多继承。所有的类有一个祖先类Object,但是接口没有一个所有接口的共同祖先。 接口体含有域和方法。 所有的域都隐含地定义为public,static,final的,因此不建议使用这些修饰符。 所有方法都隐含地定义为public,abstract的。因此也不建议使用这些修饰符。 例1.这个例子只是从语法上介绍接口及接口的继承。 interface Mysuper { void f (); Object g (); } interface Mysub extends Mysuper { void h(); } 定义Mysuper是一个有两个抽象方法的接口。Mysub是一个继承自Mysuper的接口,它自身定义了一个方法h,从Mysuper继承了方法f和g,所以Mysub有3个方法。所有的方法都是public,abstract。由于接口定义没有访问修饰符,因此接口是包可访问的。 接口实现. 接口是在定义类时实现的。具体语法如下: [类修饰符] class 类名 [extends 基类名] [implements 接口1 ,…, 接口n] 类体 以上是类定义的完整语法,含义是:定义一个名字为“类名”的类,它继承自“基类名”,并且实现了接口1,…, 接口n。所谓实现了某接口,指的是它的类体包含接口中所有方法的实现。如果类只是部分实现了接口中的方法,那么这个类就是抽象类,类修饰符中必须含有abstract,否则编译出错。 接口的使用. 先看一个例子. interface 剧场 { void 显示节目单(); void 演出(); } interface 茶馆 { void 显示茶叶种类(); void 售茶(); } class X implements 剧场,茶馆{……} 显然X是带演出的茶馆类?它既可以看成茶馆,也可以看成剧场。 X p=new X(); p指向一个带演出的茶馆。 剧场 q=p; q指向一个带剧团。使用r只能访问剧团接口的方法。 茶馆 r=p; r指向一个茶馆。使用r只能访问茶馆接口的方法。 一般情况下,给定类定义并创建对象 class Sub extends Super implements K1,K2 {…..}。 Sub X=new Sub(); 根据以前的知识,可以说X引用的对象是Sub类型的,也可以说这个对象是Sup类型的。因为接口是数据类型,因此也可以说:X引用的对象是K1类型的也是K2类型的。 定义接口类型的变量.接口是数据类型,因此可以定义接口类型的变量,该变量是引用类型的。但是不能定义接口类型的对象,因为接口是抽象的。 对象的引用.对于任何实现了接口K的类C,接口类型K的变量都可以引用C类型的对象。 例.假设有类定义和变量定义 class C1

文档评论(0)

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

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

1亿VIP精品文档

相关文档