Java2 实用教程第4版_第6章_接口与实现
ZXY123456789
贡献于2015-04-30
3923
0
0
Java2 实用教程第4版_第6章_接口与实现
下载需要
5
金币
[ 金币充值 ]
服务器/托管费、人工审核、技术维护等都需要很多费用,请您支持深度开源的发展
下载PPT
标签:
Java开发
Java
PPT 内容
1. 注意:开始用功了!第 1 页
2. 《Java2实用教程(第4版)》 第6章接口与实现 第 2 页
3. 导读主要内容 接口 实现接口 理解接口 接口回调 接口与多态 接口变量做参数 面向接口编程第 3 页
4. §6.1 接口 为了克服Java单继承的缺点,Java使用了接口,一个类可以实现多个接口。 使用关键字interface来定义一个接口。接口的定义和类的定义很相似,分为接口的声明和接口体。 interface Printable { final int MAX=100; void add(); float sum(float x ,float y); } 1.接口声明 接口通过使用关键字interface来声明,格式: interface 接口的名字 2.接口体 接口体中包含常量定义和方法定义两部分。第 4 页
5. 注意事项接口中常量的访问权限一定是public,允许省略public、final和static修饰符; 接口体中只有抽象方法,没有普通的方法。所有抽象方法的访问权限一定都是public,允许省略public abstract修饰符第 5 页
6. §6.2 实现接口 一个类通过使用关键字implements声明自己实现一个或多个接口。 class A implements Printable,Addable 如果一个类实现了某个接口,那么这个类必须重写该接口的所有方法。 Java提供的接口都在相应的包中,通过import语句不仅可以引入包中的类,也可以引入包中的接口,例如: import java.io.*; 不仅引入了java.io包中的类,也同时引入了该包中的接口。 第 6 页
7. 接口实现注意事项如果一个非抽象类实现了某个接口,那么这个类必须重写接口中的所有方法,类在重写方法时要去掉abstract修饰符,给出方法体,方法的访问权限一定是public 抽象类既可以重写接口中的方法,也可以直接拥有接口中的方法。第 7 页
8. 接口的细节说明Interface前面加上public关键字,称为public接口,public接口可以被任何类实现; 如果一个接口前不加public修饰符,称为友好接口,友好接口可以被与该接口在同一包中的类实现 如果父类实现了某个接口,那么子类也就实现了该接口 接口可以被继承,通过关键字extends声明一个接口是另一个接口的子接口,子接口继承父接口中的全部方法和常量。第 8 页
9. 例子1(Example6_1)中包含有China类、Japan类和Computable接口,而且China和Japan类都实现了Computable接口。运行效果如图6.1。 第 9 页
10. §6.3 理解接口 接口的思想在于它可以要求某些类有相同名称的方法,但方法的具体内容(方法体的内容)可以不同,即要求这些类实现接口,以保证这些类一定有接口中所声明的方法(即所谓的方法绑定)。接口在要求一些类有相同名称的方法的同时,并不强迫这些类具有相同的父类。比如,各式各样的电器产品,它们可能归属不同的种类,但国家标准要求电器产品都必须提供一个名称为on的功能(为达到此目的,只需要求它们实现同一接口,该接口中有名字为on的方法),但名称为on的功能的具体行为由各个电器产品去实现。 例子2 第 10 页
11. §6.4 接口的UML图 表示接口的UML图和表示类的UML图类似,使用一个长方形描述一个接口的主要构成,将长方形垂直地分为三层。 第1层是名字层、第2层是常量层、第3层是方法层 。第 11 页
12. §6.5 接口回调 接口回调是指:可以把实现某一接口的类创建的对象的引用赋给该接口声明的接口变量中,那么该接口变量就可以调用被类重写的接口方法。实际上,当接口变量调用被类重写的接口方法时,就是通知相应的对象调用这个方法。例子3 Com com;com = object; ImpleCom object = new ImpleCom(); 第 12 页
13. §6.6 接口与多态 可以通过在接口中声明若干个abstract方法,表明这些方法的重要性,方法体的内容细节由实现接口的类去完成。使用接口进行程序设计的核心思想是使用接口回调,即接口变量存放实现该接口的类的对象的引用,从而接口变量就可以回调类实现的接口方法。 例子4 第 13 页
14. §6.7 接口参数 如果一个方法的参数是接口类型,我们就可以将任何实现该接口的类的实例的引用传递给该接口参数,那么接口参数就可以回调类实现的接口方法。 例子5 第 14 页
15. §6.8 abstract类与接口的比较 接口和abstract类的比较如下: 1.abstract类和接口都可以有abstract方法。 2.接口中只可以有常量,不能有变量;而abstract类中即可以有常量也可以有变量。 3.abstract类中也可以有非abstract方法,接口不可以。 第 15 页
16. §6.9 面向接口编程 面向接口去设计程序,可以通过在接口中声明若干个abstract方法,表明这些方法的重要性,方法体的内容细节由实现接口的类去完成。 使用接口进行程序设计的核心思想是使用接口回调,即接口变量存放实现该接口的类的对象的引用,从而接口变量就可以回调类实现的接口方法。 第 16 页
17. §6.10 应用举例 设计一个广告牌,希望所设计的广告牌可以展示许多公司的广告词。 例子6中除了主类(Example6_6)外,还有Avertisemen接口及实现该接口的WhiteCloudCorp(白云公司)和BlackLandCorp(黑土公司),以及面向接口的AdvertisementBoard类(广告牌),程序运行效果如图6.12。 1.问题的分析 2.设计接口 3.设计广告牌类第 17 页
18. 第 18 页
PPT 图集
相关PPT
Java2 实用教程第4版_第6章_接口与实现
Java2 实用教程第4版_第4章_类与对象
Java2 实用教程第4版_第5章_子类与继承
Java2 实用教程第4版_第3章_运算符、表达式与语句
Java2实用教程第4版_第2章_基本数据类型与数组
Java2 实用教程第4版 第1章 Java入门
第1章 Java 入门
《Java2面向对象程序设计基础》第6章:线程
jsp实用教程第6章连接数据库
第十三章 JDBC 教程