第4讲-接口与内部类.ppt

上传人:99****p 文档编号:1456233 上传时间:2019-02-28 格式:PPT 页数:17 大小:227.50KB
下载 相关 举报
第4讲-接口与内部类.ppt_第1页
第1页 / 共17页
第4讲-接口与内部类.ppt_第2页
第2页 / 共17页
第4讲-接口与内部类.ppt_第3页
第3页 / 共17页
第4讲-接口与内部类.ppt_第4页
第4页 / 共17页
第4讲-接口与内部类.ppt_第5页
第5页 / 共17页
点击查看更多>>
资源描述

1、第 5章 接口与内部类 在学习了类、对象和继承后,本章学习 Java中 2个较为高级的技术:接口和内部类。 Java中的接口是 Java灵活性的基石,主要用来描述类可以具有什么样的功能,但并不给出每个功能的具体实现。内部类是指在一个外部类的内部再定义一个类。内部类作为外部类的一个成员,是依附于外部类而存在的。在编写图形类接口的时候,内部类有助于写出专业高效的代码。5.1 接口的特性 Java中的 接口是一系列方法的声明,是一些方法特征的集合,一个接口只有方法的特征,没有方法的实现 。因此,这些方法可以在不同的地方被不同的类实现,而这些实现可以具有不同的行为或者功能。 在 Java语言规范中,

2、一个方法的特征仅包括方法的名字,参数的数目和种类,而不包括方法的返回类型,参数的名字以及抛出的异常 。在 Java编译器检查方法的重载时,会根据这些条件判断两个方法是否是重载关系。但在 Java编译器检查方法的置换时,则会进一步检查返回类型和抛出的异常是否相同。5.2 接口的定义 当定义一个接口时,实际上是在编写一个合约,该合约规定了用来描述实现该接口的类能够做什么,能够充当什么样的角色 。而接口中并没有功能的具体实现,具体实现由签了合约的类自己来完成,但实现时必须满足接口中的要求。 例如,可以编写一个接口 aerocraft,代表飞行器的角色。在该接口中定义了飞行器起飞方法。这样,具有飞行器

3、功能的所有类都可以实现该接口,并具体实现接口中的方法,不同的类可以有不同的方法实现。声明接口的基本语法如下。abstract interface /方法与成员变量的声明 例如public interface Helicopter public static final int MaxFlyHeight=5400;public abstract void verticalStart();5.3 接口的使用 在学习了如何定义接口后,本节将详细介绍接口的实现,包括接口实现的基本语法、接口中方法的实现与使用。5.3.1 接口实现的基本语法 实现接口时,需要使用关键字 implements,该关键字指定

4、该类实现接口,基本语法如下。 class implements 接口名列表中可以有多个接口名,因为接口代表的是角色,一个类可以扮演多个角色,下面给出了一个合法的接口实现的代码片段。1 /Employee接口2 public interface Employee3 4 /manager接口5 public interface Manager6 7 / Person类实现了 Employee与 Manager接口10 public class Person implements Employee, Manager5.3.2 接口中方法的实现与使用 类的继承使得开发人员可以处理同类的事物,但不能处理

5、不同类但具有相同功能的事物。接口能够被很多不同的类实现 ,但接口中定义的方法仅仅是实现某一特定功能的规范,而并没有真正实现这些功能。这些功能都需要在实现该接口的类中完成。 例如,直升机与民航客机都可以充当飞行器( Aerocraft)这个角色,但直升机与民航客机没有任何继承关系,但是直升机与民航客机通过实现 Flyer接口,使得二者都能够作为飞行器进行处理。因为类对接口的实现有上述含义,因此当一个类实现了某个接口,其应当为该接口中的所有方法提供具体实现,除非该类为抽象类,5.4 接口与抽象类 到目前为止,看起来接口与抽象类很像,它们里面都有抽象的方法,都不能实例化。甚至有的读者会想,既然这么像

6、,只要一种不是更好。但其实它们的含义及其想解决的问题都是截然不同的,本节 将从两个方面介绍它们之间的区别 。 1 语法 上的不同 见课本 P149表 5-1 2具体 含义 的不同5.5 接口与回调 回调是一种常见的程序设计模式,利用回调技术可以处理这样的问题,事件 A发生时要执行处理事件 A的代码,判断何时发生事件 A及何时执行处理的代码。这些代码是固定的,先行编写完毕,供使用。但事件 A的处理代码开放给其他开发人员编写,可以有很多不同的实现,使用时可以注册具体需要的实现来处理。 Java中 Swing与 AWT的事件监听处理模型就是使用接口与回调实现的,学习了第 8章内容后可以进一步体会接口

7、与回调带来的好处。在这里举一个简单的例子来说明这个问题,5.6 内 部 类 前面章节已经介绍了 Java中类或对象的成员,包括方法、成员变量和语句块。其实类不但有这些类型的成员,也可以作为另一个类的成员。充当这种角色的类称为内部类,包含内部类的类称为外部类,使用内部类可以完成很多特殊的任务,本节将介绍与内部类有关的内容。5.6.1 内部类概述 内部类是指在一个外部类的内部再定义一个类。内部类作为外部类的一个成员,依附于外部类而存在。内部类可为静态,可用 protected和private修饰(而外部类只能使用 public和protected的包访问权限)。内部类主要有以下几类:成员内部类、局部内部类、静态内部类、匿名内部类。 为什么需要内部类?典型的情况是,内部类继承自某个类或实现某个接口,内部类的代码创建其外围类的对象。所以可以认为内部类提供了某种进入其外围类的窗口。

展开阅读全文
相关资源
  • 2019年领导班子四个意识四个自信两个维护民主生活会对照检查材料和2019年个人树牢“四个意识”,增强“四个自信”,坚定“两个维护”对照检查材料.docx2019年领导班子四个意识四个自信两个维护民主生活会对照检查材料和2019年个人树牢“四个意识”,增强“四个自信”,坚定“两个维护”对照检查材料.docx
  • 2019年四个意识四个自信两个维护民主生活会对照检查材料和2019年以强化创新理论武装,树牢“四个意识”,坚定“四个自信”,坚决做到“两个维护”民主生活会领导对照检查材料.docx2019年四个意识四个自信两个维护民主生活会对照检查材料和2019年以强化创新理论武装,树牢“四个意识”,坚定“四个自信”,坚决做到“两个维护”民主生活会领导对照检查材料.docx
  • 2019年个人树牢“四个意识”,增强“四个自信”,坚定“两个维护”对照检查材料和2019年四个意识四个自信两个维护民主生活会对照检查材料合集.docx2019年个人树牢“四个意识”,增强“四个自信”,坚定“两个维护”对照检查材料和2019年四个意识四个自信两个维护民主生活会对照检查材料合集.docx
  • 2019年某领导班子树立四个意识坚定四个自信坚决做到两个维护民主生活会对照检查材料两份合集.docx2019年某领导班子树立四个意识坚定四个自信坚决做到两个维护民主生活会对照检查材料两份合集.docx
  • 2019年树牢“四个意识”,坚定“四个自信”民主生活会领导对照检查材料和2019年“树牢‘四个意识’,坚定‘四个自信’,勇于担当作为”专题民主生活会对照检查材料合集.docx2019年树牢“四个意识”,坚定“四个自信”民主生活会领导对照检查材料和2019年“树牢‘四个意识’,坚定‘四个自信’,勇于担当作为”专题民主生活会对照检查材料合集.docx
  • 2019年四个意识四个自信两个维护民主生活会对照检查材料和2019年对照“思想政治、精神状态、工作作风”三个方面民主生活会对照检查材料合集.docx2019年四个意识四个自信两个维护民主生活会对照检查材料和2019年对照“思想政治、精神状态、工作作风”三个方面民主生活会对照检查材料合集.docx
  • 2019年某领导班子树立四个意识坚定四个自信坚决做到两个维护民主生活会对照检查材料和2019年党委书记民主生活会剖析材料合集.docx2019年某领导班子树立四个意识坚定四个自信坚决做到两个维护民主生活会对照检查材料和2019年党委书记民主生活会剖析材料合集.docx
  • 2019年“树牢‘四个意识’,坚定‘四个自信’,勇于担当作为”专题民主生活会对照检查材料和2019年以案促改专题民主生活会对照检查材料合集.docx2019年“树牢‘四个意识’,坚定‘四个自信’,勇于担当作为”专题民主生活会对照检查材料和2019年以案促改专题民主生活会对照检查材料合集.docx
  • 2019年对照“思想政治、精神状态、工作作风”三个方面民主生活会对照检查材料和2019年四个意识四个自信两个维护民主生活会对照检查材料.docx2019年对照“思想政治、精神状态、工作作风”三个方面民主生活会对照检查材料和2019年四个意识四个自信两个维护民主生活会对照检查材料.docx
  • 2019年党委书记民主生活会剖析材料和2019年领导班子四个意识四个自信两个维护民主生活会对照检查材料两份合集.docx2019年党委书记民主生活会剖析材料和2019年领导班子四个意识四个自信两个维护民主生活会对照检查材料两份合集.docx
  • 相关搜索

    当前位置:首页 > 教育教学资料库 > 课件讲义

    Copyright © 2018-2021 Wenke99.com All rights reserved

    工信部备案号浙ICP备20026746号-2  

    公安局备案号:浙公网安备33038302330469号

    本站为C2C交文档易平台,即用户上传的文档直接卖给下载用户,本站只是网络服务中间平台,所有原创文档下载所得归上传人所有,若您发现上传作品侵犯了您的权利,请立刻联系网站客服并提供证据,平台将在3个工作日内予以改正。