Java程序设计与应用开发(第2版)chap04.pdfVIP

Java程序设计与应用开发(第2版)chap04.pdf

  1. 1、本文档共15页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
Java程序设计与应用开发(第2版) 本节主要内容 接口 抽象类 包 Java程序设计与应用开发(第2版) 4.1 接口 4.1.1 接口定义  接口定义使用的关键字是interface,其格式如下: public interface InterfaceName extends I1,...,Ik //接口声明 {//接口体,其中可以包含方法声明和常量 ... } • 接口定义由接口声明和接口体两部分组成。 在接口定义中,InterfaceName指定接口名。位于extends关键字后面 的I1,…,Ik就是被继承的接口。由一对花括号{}括起来的部分是接口 体。 Java程序设计与应用开发(第2版) • 在接口体中,方法声明的常见格式如下: ReturnType MethodName (Parameter-List); • 在Java接口中声明的方法,将隐式地声明为公有的(public)和抽象的 (abstract)。 • 由于接口没有为其中声明的方法提供实现,在方法声明后会需要一个 分号。 • 接口中定义的变量必须初始化。 • 和类不同,一个Java接口可以继承多个父接口,子接口也可以对父接 口的方法和变量进行覆盖。 • Java接口和类还有一个重要的区别:在Java接口中不存在构建器。 Java程序设计与应用开发(第2版) 4.1.2 接口的实现 • Java接口中声明了一组抽象方法,它构成了实现该接口的不同类共 同遵守的约定。在类定义中可以用关键字implements来指定其实现 的接口。一个类实现某个接口,就必须为该接口中的所有方法(包括 因继承关系得到的方法)提供实现,它也可以直接引用接口中的常 量。 Java程序设计与应用开发(第2版) 4.1.3 接口作为类型 • Java接口也是一种数据类型,可以在任何使用其他数据类型的地方使 用接口名来表示数据类型。我们可以用接口名来声明一个类变量、一 个方法的形参或者一个局部变量。 • 用接口名声明的引用型变量,可以指向实现该接口的任意类的对象。 Java程序设计与应用开发(第2版) 4.1.4 接口不应改变 • 一个接口声明了方法,但没有实现它们。 • 用户想修改某个接口,为其添加一个方法,这个简单的修 改可能会造成牵一发而动全身的局面:所有实现这个接口 的类都将无法工作,因为现在它们已经不再实现这个接口 了。用户要么放弃对这个接口的修改,要么连同修改所有 实现这个接口的所有类。 Java程序设计与应用开发(第2版) 4.2 抽 象 类 4.2.1 抽象方法 • 抽象方法(abstract method)在形式上就是包含abstract修 饰符的方法声明,它没有方法体,也就是没有实现方法。 抽象方法的声明格式如下: abstract returnType abstractMethodName([paramlist]); • 抽象方法只能出现在抽象类中。如果一个类中含有抽象方 法,那么该类也必须声明为抽象的,否则在编译时编译器 会报错。 Java程序设计与应用开发(第2版) 4.2.2 抽象类 • 定义一个抽象类需要关键字abstract,其基本格式如下: abstract class ClassName{ ... } • 抽象类不能被实例化,在程序中如果试图创建一个抽象类的对象,编 译时Java编译器会提示出错。 • 抽象类中最常见的成员就是抽象方法。 • 抽象类中也可以包含供所有子类共享的非抽象的成员变量和成员方 法。 • 继承抽象类的非抽象子类只需要实现其中的抽象方法,对于非抽象方 法既可以直接继

文档评论(0)

时间加速器 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档