收藏 分享(赏)

java2程序设计基础第四章.ppt

上传人:无敌 文档编号:974643 上传时间:2018-05-11 格式:PPT 页数:14 大小:312KB
下载 相关 举报
java2程序设计基础第四章.ppt_第1页
第1页 / 共14页
java2程序设计基础第四章.ppt_第2页
第2页 / 共14页
java2程序设计基础第四章.ppt_第3页
第3页 / 共14页
java2程序设计基础第四章.ppt_第4页
第4页 / 共14页
java2程序设计基础第四章.ppt_第5页
第5页 / 共14页
点击查看更多>>
资源描述

1、第4章 接 口,教学提示:Java的接口(interface)可以为系统中的对象提供更为精巧的组织与控制方式。简单地说,就是可以利用Java的接口(interface)建立起类(class)的基本框架,定义必要的数据成员(data member)和成员函数(member function),并不需定义任何的实现代码,可以这么说,它是对抽象类(abstract class)的极端抽象。接口(interface)是 OOP(面向对象编程)的重要特征,通过本章将会理解接口的工作原理 ,并掌握基本的开发技术。,教学目标: 通过上机练习 , 理解并掌握接口的定义以及使用方法,为以后应用程序的系统开发等高

2、级编程应用打下坚实的基础。,4.1 接口的定义,4.1.1 接口的声明,4.1.2 接口体,4.1.3 抽象类,接口是在classes类之间建立起一个协议(protocol)或者规则。Java 不支持多继承性,即一个类只能有一个父类。单继承性使得Java简单,易于管理程序,而为了克服单继承的一些缺点,Java使用了接口,一个类可以实现多个接口。,4.1.1 接口的声明,使用关键字interface来定义一个接口。接口的定义和类的定义相似,由接口声明和接口体两部分组成。 interface InterfaceName; /其中InterfaceName为接口名 例如: interface Myi

3、nterface Myinterface 为接口名。,返回,4.1.2 接口体,接口体包括data member(数据成员)和member function(成员函数)两部分 。data member 可以是基本类型 ,可以赋给初值 。接口体只负责member function的声明,不提供任何的方法实现,它只定义一个框架,就像人体的骨骼 ,具体的实现要使用者根据自己的实际应用要求来定义(即编写实现代码 ) ,这就是为什么实现自同一个接口的 classes 会很相似。因此,member function(成员函数)的定义没有方法体,结尾要用分号“;”。,返回,4.1.3 抽象类,在这里说明抽象

4、类是提供一些知识参考,抽象类和接口有很多相同点,除了一点点的区别外,从本质上讲,接口是个特殊的抽象类。 Java中可以定义一些不含方法体的方法,它的具体实现交给该类的子类去实现 , 这样的方法就是抽象方法 , 包含抽象方法的类就是抽象类。一个抽象类中可以有一个或者多个抽象方法。,返回,4.2 接口的实现和使用,4.2.2 接口的类型,4.2.3 实现接口时要注意的问题,4.2.1 关键字implements的使用,4.2.1 关键字implements的使用,假如已经编写了一个 interface , 如何才能让某个 class 符合这个interface呢?有个方法就是使用关键字implem

5、ents,其实这么做相当于外观描述已经写好了 , 现在要把它实现出来 , 也就是要说明它的运作方式,因为interface本身并没有什么功能。,返回,4.2.2 接口的类型,接口可以作为一种引用类型来使用。任何实现该接口的类的实例都可以存储在该接口类型的变量中,通过这些变量可以访问类所实现的接口中的方法。Java运行时系统会动态地确定使用哪个类的方法。,返回,4.2.3 实现接口时要注意的问题,(1) 如果一个类要实现多个接口,那么接口名之间要用逗号隔开。 (2) 如果实现接口的类不是抽象类 ,那么在类的定义部分必须实现制定接口的所有抽象方法。在实现接口方法时 ,必须将方法说明为 public

6、 ,而且还要将方法的参数列表 , 名字和返回值类型与接口中定义的完全一致。 (3) 如果实现接口的类是抽象类 , 那么它可以不实现该接口的所有抽象方法。就是说,非抽象类中不可以存在抽象方法。 (4) 一个接口可以继承其他接口,这可以通过keyword extends 来实现,其语法和类的继承是一样的 ,当一个类实现一个派生接口时,必须实现所有接口及其派生接口中定义的全部抽象方法。,返回,4.3 接口的多重继承,4.3.2 把interfaces内的数据成员初始化,4.3.1 接口的多重继承,4.3.1 接口的多重继承,接口不仅仅是一种更抽象的抽象类,其用途更为广泛。由于接口不带任何的实现细节,

7、所以说接口不与任何存储空间有联系,因此合并多个接口是一个很容易的工作。这在很多场合是很有价值的,因为有时需要声明x是个a,也是个b,或者其他的。在C+中对多个类接口的合并称做多重继承,然而在Java里头也可以进行这样的动作 ,但是其中只有一个类可以拥有实现内容。所以在合并多个接口时,C+ 面对的问题都不会在Java 中出现。继承而来的数目是不受限制的,都可以向上转型。,返回,在定义接口时,它里面的数据成员会自动被设成static和final,可以被非常量表达式初始化。,4.3.2 把interfaces内的数据成员初始化,返回,4.4 接口的嵌套,NestingInterface示范了嵌套接口的多种实现方法。要特别注意的是:当实现某个接口时,时无需实现其中任何嵌套接口。而且,private接口无法在其所定义的classes之外被实现。,接口有个很有趣的特点,可以嵌套于某个类或者其他的接口内,,4.5 上 机 指 导,Java的接口是个很重要的概念,有很多的特性,需要经常练习,熟练掌握。 在这里编写一个简单的程序,对以前所学内容做一个回顾和总结,从而能灵活运用接口。,本实例演示了接口的定义方法,还有接口的继承机制,以及在继承时可以先用关键字extends继承一个基本的类(如本例的pig类),后面在用关键字implements实现有用的接口函数,这些都时很方便的。,

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 企业管理 > 经营企划

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报