《接口与多态》PPT课件.ppt
《《接口与多态》PPT课件.ppt》由会员分享,可在线阅读,更多相关《《接口与多态》PPT课件.ppt(36页珍藏版)》请在三一办公上搜索。
1、第6章接口与多态,主要内容 接口 接口回调 面向接口编程难点 面向接口编程,导学,Java不支持多继承性,即一个类只能有一个父类。单继承性使得Java简单,易于管理和维护。Java的接口更加符合人的思维方式,6.1 接 口,使用关键字interface来定义一个接口。接口的定义和类的定义很相似,分为接口的声明和接口体。,6.1.1 接口的声明与使用,接口通过使用关键字interface来声明,格式:interface 接口的名字,1接口声明,接口是一组常量和抽象方法的集合。(1)接口的访问权限是public或缺省权限。(2)接口中成员变量声明格式如下:public static final 成
2、员变量名=常量接口中成员方法声明格式如下:public abstract 返回值类型 成员方法名(参 数表)注意:接口中成员变量和成员方法的格式是固定的,故可以省略。,2接口体,举例,interface Printable public static final int MAX=100;public abstract void add();public abstract float(float x,float y);,接口的示例,public interface Shape1public static final PI=3.14;public abstract double area();pu
3、blic abstract double volume(double x);public abstract void show();,接口的特点,(1)接口可以定义多重继承(2)接口不存在最高层,而Java中类的最高层是Object类。(3)接口中的方法只能被声明为public abstract 接口中成员变量只能用public static final 来声明。(4)接口中的方法不能定义方法体。,在Java语言中,接口由类去实现以便使用接口中的方法。一个类可以实现多个接口,类通过使用关键字implements声明自己实现一个或多个接口。如果实现多个接口,则用逗号隔开接口名如:class A
4、implements Printable,Addable,3接口的使用,重要性质,如果一个类实现了接口,那么这个类必须重写该接口的所有方法重写接口的方法时,接口中的方法一定是public abstract 方法,所以类在重写接口方法时不仅要去掉abstract 修饰,给出方法体,而且方法的访问权限一定要用public 来修饰。,例6-1,public interface Computable int MAX=100;int f(int x);public class China implements Computable/China类实现Computable接口 int number;publ
5、ic int f(int x)/不要忘记public关键字 int sum=0;for(int i=1;i=x;i+)sum=sum+i;return sum;,public class Japan implements Computable/Japan类实现Computable接口 int number;public int f(int x)return 46+x;,public class Example6_1 public static void main(String args)China zhang;Japan henlu;zhang=new China();henlu=new Ja
6、pan();zhang.number=28+Computable.MAX;henlu.number=14+Computable.MAX;System.out.println(zhang的学号+zhang.number+,zhang求和结果+zhang.f(100);System.out.println(henlu的学号+henlu.number+,henlu求和结果+henlu.f(100);,说明,(1)如果父类实现了某接口,那么子类也就实现了该接口,子类不必显式地使用关键字implements声明实现了接口(2)接口声明时,关键字interface前可加public(3)如果一个类声明实现
7、了一个接口,但没有重写接口中的所有方法,那么这个类必须是abstract类,interface Computable final int MAX=100;void speak(String s);int f(int x);float g(float x,float y);abstract class A implements Comutablepublic int f(int x)int sum=0;for(int i=1;i=x;i+)sum+=i;return sum;,6.1.2 理解接口,接口可以增加很多类都需要的功能,不同类可以实现相同的接口,同一个类也可以实现多个接口。,接口提供了
8、方法声明与实现相分离的机制,使实现接口的多个类表现出相同的行为模式。,当一个类不希望通过继承使得自己具有某个方法时,就可以考虑去实现接口而不是把自己声明为某个类的子类。,例6-2,见教材,6.1.3 接口的UML图,顶部是名字层,接口名必须是斜体,而且需要用第二层是常量层第三层是方法层,6.2 接口回调(重点),6.2.1 接口变量与回调机制6.2.2 接口的多态性6.2.3 abstract 类与接口的区别,6.2.1 接口变量与回调机制,接口是一种数据类型,用接口声明的变量称为接口变量接口变量中可以存放实现接口的类的实例的引用。接口回调?可以把实现某一接口的类创建的对象的引用赋给该接口声明
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 接口与多态 接口 PPT 课件
链接地址:https://www.31ppt.com/p-5516352.html