本章主要介以下几个问题.pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
本章主要介以下几个问题

本章主要介绍以下几个问题 1. Java语言的继承 2. Java语言的多态 3. Java方法的重载 4. 构造函数的继承与重载 5. Java语言的包 6. Java语言的接口 第五章 继承与多态 5.1 继承 1. 继承和多态是面向对象程序设计的两个重要特点。继承是面向对象程序设计方法的一个重要手段,通过继承可以更有效地组织程序结构,明确类间的关系,充分利用已有的类来完成更复杂、更深入的开发。 第五章 继承与多态 5.1 继承 2. 当一个类拥有另一个类的所有数据和操作时,就称这两个类之间存在着继承关系。被继承的类称为父类或超类,继承了父类的所有数据和操作的类就为子类。 3. 一个父类可以同时拥有多个子类,此时父类实际是所有子类的公共域和公共方法的集合;而每一个子类则是父类的特殊化,是对父类公共域和方法在功能、内涵方面的扩展和延伸。 第五章 继承与多态 5.1 继承 4. 单重继承是指任何一个类都只有一个单一的父类,其结构可以用单纯的树状结构来表示;若一个类有一个以上的父类则称为多重继承。其结构应以复杂的网状结构来表示。Java语言仅支持单重继承。 5. 在面向对象的程序设计中,采用继承的方式来组织设计系统中的类,可以提高程序的抽象程度,更接近人的思维方式,使程序结构更清晰并降低编码和维护的工作量。 第五章 继承与多态 5.2 Java的继承 5.2.1 派生子类 1. Java语言中类的继承是通过类定义的 extends关键字来实现的。即关键字指明了新定义类的父类,从而建立了两个类之间的继承关系,新定义的类是子类,它继承了父类所有非 private的属性和方法作为自己的成员。 2. 分析图5-1和例5-1电话卡类的继承结构。 第五章 继承与多态 5.2.2 域的继承与隐藏 1. 域的继承是指子类可以继承父类的所有非私有域。 分析例5-1。可见:父类的所有非私有域实际是各个子类所拥有的域的集合。 2. 子类重新定义一个与从父类那里继承来的域变量完全相同的变量,称为域的隐藏。 第五章 继承与多态 5.2.2 域的继承与隐藏 3. 域的隐藏是指子类拥有了两个相同名字的变量,其中 一个来自于父类,另一个由自己定义。 4. 当子类执行来继承自父类的操作时,处理的是继承父类的变量,而当子类执行它自己定义的方法时,所操作的就是它自己定义的变量,而把继承来自父类的变量“隐藏”起来。 5. 例5-2。 第五章 继承与多态 5.2.3 方法的继承与覆盖 1. 方法的继承:方法的继承是指父类的非私有方法也可以被子类继承。例5-2。 2. 方法的覆盖:是指子类也可以重新定义与父类同名的方法,实现对父类的覆盖。子类在重新定义父类已有的方法时应保持与父类完全相同的方法名、返回值和参数列表,否则就不是方法的覆盖。 第五章 继承与多态 5.2.3 方法的继承与覆盖 3. 方法的覆盖与域的隐藏的区别在于:子类隐藏父类的域是使父类的域不可见,而父类的同名域在子类的对象中仍然占有独立的内存空间;而子类方法对父类同名方法的覆盖将清除父类方法在内存所占用的空间,从而使父类方法在子类的对象中不复存在。 4. 例5-3。 第五章 继承与多态 5.2.4 this和super 1. Java系统默任:每个类都缺省地具有 null、this 和 super 三个域,可以在任意类中不加说明地直接使用这三个域。 2. null 代表“空”值,在定义一个对象但尚未为其开辟内存空间时,可以指定这个对象为 null。 第五章 继承与多态 5.2.4 this和super 3. this 表示的是当前对象本身,它实际代表了当前对象的一个引用。一个对象可以有若干个引用,this 只是其中的一个。 4. 例5-4。 5. super 表示的是当前对象的直接父类对象,是对直接父类对象的引用。 6. 例5-5。 第五章 继承与多态 5.2.4 this和super 7. 直接父类 例如:A类派生出 B类,B类派生出C类,那么B是C的 “直接父类”;A是C的 “祖先类”。 同理:Number_PhoneCard 类是D200_Card 类的 “直接父类” ,PhoneCard 类是 D200_Card 类的 “祖先类”。 第五章 继承与多态 5.2.4 this和super 8. 父类对象与子类对象的转换 (1)子类对象可以被视为是其父类的一个对象。 (2)父类对象不能被当作是某一个子类的对象。 第五章 继承与多态 5.2.4 this和super 8. 父类对象与子类对象的转换 (3)如果一个方法的形式参数定义的是父类对象,那么调用这个方法时,可以使用子类对象作为实际参数。 (4)如果父类对象与引用指向的实际是一个

文档评论(0)

152****5013 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档