网站大量收购独家精品文档,联系QQ:2885784924

《Java 程序设计基础》 课件 第九章-抽象类和接口.pptx

《Java 程序设计基础》 课件 第九章-抽象类和接口.pptx

  1. 1、本文档共19页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多

Java程序设计基础

抽象类和接口

抽象类和接口主要内容

•9.1抽象类(重点)

•9.2接口(重点)

•9.3内部类

1

教学目标

•能理解抽象类的概念及作用

•能理解接口的概念及作用

•能准确区分接口继承与类继承的不同之处

•能准确区分接口和抽象类的不同及联系

•能使用接口和抽象类实现面向基类的编程思想

•能理解内部类的概念及作用

•能正确使用成员内部类,静态内部类,局部内部类、匿名内部类等四种类型的内部类

•能使用接口和抽象类提高程序的复用度

2

抽象类简介

•除了前面介绍的类以外,还存在一种特殊的类——抽象类。如果在类的定义中存在着一

些抽象的方法,那么这种类就称为抽象类。语法上,抽象类是不能用于实例化对象的。

•抽象类往往用来表示抽象概念。

•举个例子,中国人(Chinese类)和美国人(American类)都有“吃饭”这个行为,因

此可以先定义一个Person类,然后让Chinese和American都继承这个类。但如何在

父类Person中定义“吃饭”这个方法呢?一般而言,中国人是用筷子吃饭,并且吃的是

中餐;而美国人是用刀叉吃饭,吃的是西餐,显然二者对于“吃饭”这一行为的具体实现

是不同的。因此,无法在父类Person中具体的定义“吃饭”这一方法。此时,就可以将

Person定义成一个抽象类,并将“吃饭”这个行为定义成抽象方法(只有方法声明,但

没有方法体的方法),然后再在子类Chinese和American中分别对“吃饭”进行具体的

实现。

3

抽象类的语法形式

•在面向对象分析和设计的过程中,经过封装和继承的分析之后,可以先创建一个抽象的

父类,该父类定义了其所有子类共享的一般形式(如Person类),具体细节再由子类

来完成(如Chinese类和American类)。Java中定义抽象类的语法形式如下。

abstractclass类名{}

•Java也提供了一种特殊的方法,这个方法不是一个完整的方法,只含有方法的声明,

没有方法体,这样的方法叫做抽象方法,其语法形式如下。

访问修饰符abstract返回值方法名();

4

抽象类的三个语法特征

•抽象类不能被直接实例化

•抽象类的子类必须实现抽象方法(除非这个子类也是抽象类)

•抽象类里可以有普通方法,也可以有抽象方法,但是有抽象方法的类必须是抽象类。

需要注意的是,抽象类里面也可以没有抽象方法,只是把原来的类前面加上abstract关

键字,使其变为抽象类。例如,以下定义抽象类的代码是符合语法规范的。

5

接口简介

•接口是一系列抽象方法的集合,与抽象类不同,不可以声明普通方法。

•虽然有人常说,接口是一种特殊的抽象类,但是在面向对象编程的设计思想层面,两者

还是有显著区别的。抽象类更侧重于对相似的类进行抽象,形成抽象的父类以供子类继

承使用;而接口往往在程序设计的时候,定义模块与模块之间应满足的规约或者定义一

种标准,使各模块之间能协调工作。

6

接口的定义语法

•Java接口定义的语法形式如下。

[修饰符]interface接口名[extends][接口列表]{接口体}

•interface前的修饰符是可选的,如果使用修饰符,则只能用public修饰符,表示此接

口是公有的,在任何地方都可以引用它,这一点和类是相同

您可能关注的文档

文档评论(0)

balala11 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档