欢迎来到三一办公! | 帮助中心 三一办公31ppt.com(应用文档模板下载平台)
三一办公
全部分类
  • 办公文档>
  • PPT模板>
  • 建筑/施工/环境>
  • 毕业设计>
  • 工程图纸>
  • 教育教学>
  • 素材源码>
  • 生活休闲>
  • 临时分类>
  • ImageVerifierCode 换一换
    首页 三一办公 > 资源分类 > PPT文档下载  

    《接口与实现》PPT课件.ppt

    • 资源ID:5516354       资源大小:247.49KB        全文页数:22页
    • 资源格式: PPT        下载积分:15金币
    快捷下载 游客一键下载
    会员登录下载
    三方登录下载: 微信开放平台登录 QQ登录  
    下载资源需要15金币
    邮箱/手机:
    温馨提示:
    用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP免费专享
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    《接口与实现》PPT课件.ppt

    2023/7/15,信息学院,1,第7章 接口与实现,Java 不支持多继承性,即一个类只能有一个父类。单继承性使得Java 简单,易于管理程序。为了克服单继承的缺点,Java使用了接口,一个类可以实现多个接口。使用关键字interface 来定义一个接口。接口的定义和类的定义很相似,分为接口的声明和接口体。,2023/7/15,信息学院,2,7.1.1 接口的声明与使用(1)接口声明 接口通过使用关键字interface 来声明 interface 接口的名字(2)接口体 接口体中包含常量定义和方法定义两部分。接口体中只进行方法的声明,不许提供方法的实现,所以方法的定义没有方法体,且用分号结尾。,7.1 接口,2023/7/15,信息学院,3,例:interface Runner public static final int id=1;public void start();public void run();public void stop();,7.1 接口,2023/7/15,信息学院,4,(3)接口的使用 一个类通过使用关键字implements 声明自己使用一个或多个接口。如果使用多个接口,用逗号隔开接口名。如:class A implements Printable,Addable class Dog extends Animal implements Eatable,Sleepable,7.2 实现接口,2023/7/15,信息学院,5,7.2 实现接口,如果一个类使用了某个接口,那么这个类必须实现该接口的所有方法,即为这些方法提供方法体。,需要注意的是在类中实现接口的方法时,方法的名字、返回类型、参数个数及类型必须与接口中的完全一致。,特别要注意的是接口中的方法被默认是public 的,所以类在实现接口方法时一定要用public 来修饰。,2023/7/15,信息学院,6,如果接口的方法的返回类型不是void 的,那么在类中实现该接口方法时,方法体至少要有一个return 语句。如果是void 型,类体除了两个大括号外,也可以没有任何语句。,7.2 实现接口,Java 为我们提供的接口都在相应的包中,通过引入包可以使用Java 提供的接口。也可以自己定义接口,一个java源文件就是由类和接口组成的。,2023/7/15,信息学院,7,例:import java.applet.*;import java.awt.*;interface Computable final int MAX=100;void speak(String s);int f(int x);float g(float x,float y);class China implements Computable int xuehao;public int f(int x)/不要忘记public关键字.int sum=0;for(int i=1;i=x;i+)sum=sum+i;return sum;,2023/7/15,信息学院,8,public float g(float x,float y)return 6;/至少有return语句.public void speak(String s)class Japan implements Computable int xuehao;public int f(int x)return 68;public float g(float x,float y)return x+y;,2023/7/15,信息学院,9,public void speak(String s)public class Example4_26 extends Applet China Li;Japan Henlu;public void init()Li=new China();Henlu=new Japan();Li.xuehao=991898;Henlu.xuehao=941448;,2023/7/15,信息学院,10,public void paint(Graphics g)g.drawString(xuehao:+Li.MAX+Li.xuehao+从1到100 求和+Li.f(100),10,20);g.drawString(xuehao:+Henlu.MAX+Henlu.xuehao+加法+Henlu.g(2.0f,3.0f),10,40);注:如果一个类声明实现一个接口,但没有实现接口中的所有方法,那么这个类必须是 abstract 类。,2023/7/15,信息学院,11,接口的语法规则很容易记住,但真正理解接口更重要。你可能注意到,在上述例子26 中如果去掉接口,并把程序中的Li.MAX,Henlu.MAX 去掉,上述程序的运行没有任何问题。那为什么要用接口呢?,7.3 理解接口,2023/7/15,信息学院,12,假如轿车、卡车、拖拉机、摩托车、客车都是机动车的子类,其中机动车是一个抽象类。如果机动车中有一个抽象方法“收取费用”,那么所有的子类都要实现这个方法,即给出方法体,产生各自的收费行为。这显然不符合人们的思维方法,因为拖拉机可能不需要有”收取费用”的功能,而其他的一些类,比如飞机、轮船等可能也需要具体实现”收取费用”。,7.3 理解接口,2023/7/15,信息学院,13,接口可以增加很多类都需要实现的功能,不同的类可以使用相同的接口,同一个类也可以实现多个接口。,7.3 理解接口,接口只关心功能,并不关心功能的具体实现。,比如“客车类”实现一个接口,该接口中有一个“收取费用”的方法,那么这个“客车类”必须具体给出怎样收取费用的操作,即给出方法的方法体,不同车类都可以实现“收取费用”,但“收取费用”的手段可能不相同。,2023/7/15,信息学院,14,7.3 理解接口,接口的思想在于它可以增加很多类都需要实现的功能,使用相同的接口类不一定有继承关系。,注:接口声明时,如果关键字interface 前面加上public 关键字,就称这样的接口是一个public 接口,public 接口可以被任何一个类使用。如果一个接口不加public 修饰,就称做友好接口类,友好接口可以被同一包中的类使用。,2023/7/15,信息学院,15,7.4 接口的UML图,表示接口的UML图和表示类的UML图类似,使用一个长方形描述一个接口的主要构成,将长方形垂直地分为三层。第1层是名字层、第2层是常量层、第3层是方法层。,2023/7/15,信息学院,16,接口回调是指可以把实现某一接口的类创建的对象的引用赋给该接口声明的接口变量中。那么该接口变量就可以调用被类实现的接口中的方法。实际上,当接口变量调用被类实现的接口中的方法时,就是通知相应的对象调用接口的方法。,7.5 接口回调,2023/7/15,信息学院,17,例:interface ShowMessage void 显示商标(String s);class TV implements ShowMessage public void 显示商标(String s)System.out.println(s);class PC implements ShowMessage public void 显示商标(String s)System.out.println(s);,7.5 接口回调,2023/7/15,信息学院,18,public class Example4_28 public static void main(String args)ShowMessage sm;sm=new TV();sm.显示商标(长城牌电视机);sm=new PC();sm.显示商标(联想奔月5008PC机);,7.5 接口回调,2023/7/15,信息学院,19,7.7 接口变量做参数,如果一个方法的参数是接口类型,就可以将任何实现该接口类的实例的引用传递给该接口参数,那么接口参数就可以回调类实现的接口方法。,2023/7/15,信息学院,20,7.6 接口与多态,可以通过在接口中声明若干个abstract方法,表明这些方法的重要性,方法体的内容细节由实现接口的类去完成。使用接口进行程序设计的核心思想是使用接口回调,即接口变量存放实现该接口的类的对象的引用,从而接口变量就可以回调类实现的接口方法。例3,2023/7/15,信息学院,21,7.8 abstract类与接口的比较,接口和abstract类的比较如下:1abstract类和接口都可以有abstract方法。2接口中只可以有常量,不能有变量;而abstract类中即可以有常量也可以有变量。3abstract类中也可以有非abstract方法,接口不可以。,2023/7/15,信息学院,22,7.9 面向接口编程,面向接口去设计程序,可以通过在接口中声明若干个abstract方法,表明这些方法的重要性,方法体的内容细节由实现接口的类去完成。使用接口进行程序设计的核心思想是使用接口回调,即接口变量存放实现该接口的类的对象的引用,从而接口变量就可以回调类实现的接口方法。例5,

    注意事项

    本文(《接口与实现》PPT课件.ppt)为本站会员(牧羊曲112)主动上传,三一办公仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知三一办公(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    备案号:宁ICP备20000045号-2

    经营许可证:宁B2-20210002

    宁公网安备 64010402000987号

    三一办公
    收起
    展开