java程序设计教程第5章

java程序设计教程第5章

ID:46944558

大小:692.50 KB

页数:96页

时间:2019-11-30

java程序设计教程第5章_第1页
java程序设计教程第5章_第2页
java程序设计教程第5章_第3页
java程序设计教程第5章_第4页
java程序设计教程第5章_第5页
资源描述:

《java程序设计教程第5章》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第5章接口、内部类和包5.1接口5.2内部类5.3包5.4JavaAPI基础本章小结习题5.1接口Java支持单重继承机制,不支持多重继承,即一个类只能有一个超类。单继承机制使得Java结构简单,层次清楚,易于管理,但在实际应用中也需要使用多重继承功能。为了实现像C++中的多继承性,Java中引入了接口概念,接口和单重继承相结合很好地实现了多重继承的功能。接口和类非常相似,接口用于定义几个类具有的但又不在这些类中定义的功能,通过在接口中设置这些方法,描述出共同的特性,然后由类本身定义如何实现。5.1.1接口定义接口是由常量和抽象方法组成的特殊

2、类。接口定义由关键字interface引导,分为接口的声明和接口体。其中,interface声明接口名,在接口体中定义常量和方法。在接口体中只进行方法的声明,不能进行方法的实现。具体定义语法如下:[public]interface接口名[extends父接口名列表]{[public][static][final]域类型域名=常量值;∥常量域声明[public][abstract][native]返回值方法名(参数列表)[throw异常列表];∥抽象方法声明}有关接口的定义要注意以下几点:(1) interface是声明接口的关键字,可以把它看

3、成一个特殊的类。(2)声明接口可给出访问控制符,用public修饰的是公共接口,可以被所有的类和接口使用。若接口声明为public,则接口中的方法和变量也全部为public。如果是默认修饰符的接口,则只能被同一个包中的其他类和接口使用。(3)接口名要求符合Java标识符的规定。(4)接口也具有继承性,定义一个接口时,可以通过extends关键字声明该接口是某个已经存在的父接口的派生接口,它将继承父接口的所有属性和方法。一个接口还可以继承多个父接口,父接口间用逗号分隔。(5)系统默认接口中所有属性的修饰都是publicstaticfinal。(

4、6)系统默认接口中所有方法的修饰都是publicabstract。(7)在接口中对抽象方法声明时,只能给出这些抽象方法的方法名、返回值和参数列表,而不能定义方法体,即这些接口仅仅是规定了一组信息交换、传输和处理的“接口”。   以下是接口定义的一个示例,声明了一个接口Student_info,表示学生情况,其中有一个数据成员year,两个成员方法age和output。定义在接口中的变量全部隐含为final和static,因此成员变量year必须设置初值。接口在语句构成上与类相似,但是其中只有方法的声明,没有方法的实现。【示例5-1】Stude

5、nt_info.java。publicinterfaceStudent_info{intyear=2008;intage();voidoutput();}5.1.2实现接口接口是抽象类的一种,不能直接用于创建对象。接口的作用在于规定了一些功能框架。接口的定义仅仅是实现某一特定功能的一组功能的对外接口和规范,具体功能的实现则由遵守该接口约束的类去完成,即由这些类来具体定义接口中各种抽象方法的方法体。因而在Java中,通常把对接口功能的“继承”称为“实现”。一旦一个接口被定义,一个或多个类就可以实现该接口。用关键字implements声明一个类将

6、实现一个接口。其声明格式如下:[<修饰符>]class<类名>[extends<超类名>][implements<接口名1>,<接口名2>,…]其中,<修饰符>可以是public,也可以省略。有关接口的实现,应该注意以下问题:(1)一个类可以实现多个接口,用逗号分隔接口列表。(2)如果实现某接口的类不是abstract的抽象类,则在类的定义部分必须实现指定接口的所有抽象方法,即为所有抽象方法定义方法体,而且方法头部分应该与接口中的定义完全一致,即有完全相同的返回值和参数列表。(3)如果实现某接口的类是abstract的抽象类,则它可以不实现该

7、接口所有的方法。但是对于这个抽象类的任何一个非抽象的子类而言,它们的父类所实现的接口中的所有抽象方法都必须有实在的方法体。这些方法体可以来自抽象的父类,也可以来自子类自身,但是不允许存在未被实现的接口方法。这主要体现了非抽象类中不能存在抽象方法的原则。(4)接口的抽象方法的访问限制符都已指定为public,一个类在实现一个接口时,必须实现接口中的所有方法,并且方法必须声明为public。下面是一个类实现接口的示例,声明的类Student实现接口Student_info,其中Student类中有自己的三个成员变量name、sex和birth_y

8、ear,实现接口方法age时使用了接口中的变量year值。【示例5-2】Student.java。publicclassStudentimplementsStude

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

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

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