1 1 1 1 1 1 1 1 1 1 1 1 PPT注意事项: 当前PPT课件文件必须和提供的源代码文件夹“代码”在同一目录中,即不要移动文件夹“代码”的默认位置。 课件制作人 张跃平 * * 《Java程序设计精编教程(第3版)》 第7章 配合< Java程序设计精编教程>例子源代码一起使用 Power point 制作:耿祥义 张跃平 接口与实现 * 1 导读 主要内容 接口 实现接口 理解接口 接口回调 接口与多态 接口变量做参数 面向接口编程 * 1 §7.1 接口 为了克服Java单继承的缺点,Java使用了接口,一个类可以实现多个接口。 使用关键字interface来定义一个接口。接口的定义和类的定义很相似,分为接口的声明和接口体。 interface Printable { final int MAX=100; void add(); float sum(float x ,float y); } 1.接口声明 接口通过使用关键字interface来声明,格式: interface 接口的名字 2.接口体 接口体中包含常量定义和方法定义两部分。 * 1 §7.2 实现接口 一个类通过使用关键字implements声明自己实现一个或多个接口。 class A implements Printable,Addable 如果一个类实现了某个接口,那么这个类必须重写该接口的所有方法。 Java提供的接口都在相应的包中,通过import语句不仅可以引入包中的类,也可以引入包中的接口,例如: import java.io.*; 不仅引入了java.io包中的类,也同时引入了该包中的接口。 例子1 * 1 例子1中包含有China类、Japan类和Computable接口,而且China和Japan类都实现了Computable接口。 主类是Example7_1. * 1 §7.3 理解接口 接口可以增加很多类都需要具有的功能,不同的类可以实现相同的接口,同一个类也可以实现多个接口。 接口只关心操作,并不关心操作的具体实现 接口的思想在于它可以增加很多类都需要具有的功能,而且实现相同的接口类不一定有继承关系。 * 1 §7.4 接口的UML图 表示接口的UML图和表示类的UML图类似,使用一个长方形描述一个接口的主要构成,将长方形垂直地分为三层。 第1层是名字层、第2层是常量层、第3层是方法层 。 * 1 §7.5 接口回调 接口回调是指:可以把实现某一接口的类创建的对象的引用赋给该接口声明的接口变量中,那么该接口变量就可以调用被类重写的接口方法。实际上,当接口变量调用被类重写的接口方法时,就是通知相应的对象调用这个方法。 例子2 * 1 例子2使用了接口的回调技术,程序运行效果如图7.6。 * 1 §7.6 接口与多态 可以通过在接口中声明若干个abstract方法,表明这些方法的重要性,方法体的内容细节由实现接口的类去完成。使用接口进行程序设计的核心思想是使用接口回调,即接口变量存放实现该接口的类的对象的引用,从而接口变量就可以回调类实现的接口方法。 例子3 * 1 例子3中,A类和B都实现了ComputerAverage接口,但实现的方式不同。程序运行效果如图7.7。 * 1 §7.7 接口变量做参数 如果一个方法的参数是接口类型,我们就可以将任何实现该接口的类的实例的引用传递给该接口参数,那么接口参数就可以回调类实现的接口方法。 例子4 * 1 例子4中KindHello中的lookHello方法的参数是接口类型,程序运行效果如图7.8。 * 1 §7.8 abstract类与接口的比较 接口和abstract类的比较如下: 1.abstract类和接口都可以有abstract方法。 2.接口中只可以有常量,不能有变量;而abstract类中即可以有常量也可以有变量。 3.abstract类中也可以有非abstract方法,接口不可以。 * 1 §7.9 面向接口编程 面向接口去设计程序,可以通过在接口中声明若干个abstract方法,表明这些方法的重要性,方法体的内容细节由实现接口的类去完成。 使用接口进行程序设计的核心思想是使用接口回调,即接口变量存放实现该接口的类的对象的引用,从而接口变量就可以回调类实现的接口方法。 例子5 * 1 AdvertisementBoard类(广告牌) 类有一个show(Advertisement adver
java程序设计精编教程第3版电子版课后答案_Java程序设计精编教程(第3版) 第7章_接口与实现.ppt...
最新推荐文章于 2023-10-08 09:43:57 发布
![](https://img-home.csdnimg.cn/images/20240711042549.png)