第6讲 继承和多态(上).pptVIP

  1. 1、本文档共41页,可阅读全部内容。
  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文档。上传文档
查看更多
2、 抽象类(abstract) 抽象类是针对具体类(Concrete)来说的,抽象类和具体类是继承的关系(抽象继承)。 当一个类被声明为abstract时,这个类被称为是抽象类。所谓抽象类就是没有具体实例对象的类。 抽象类包含了一些概念基本的属性和抽象方法,具体类包含子类特殊的属性和方法。 “I am concrete?” 动物 猫 鸟 “I am abstract?” 详细 动物 猫 鸟 。。。 new cat1 cat2 bird1 new Animal cat1 = new Cat(); //向上转型 Animal cat2 = new Cat(); Animal bird1 = new Bird(); 见例子TestExtends2 注意: 抽象类不能实例化 3、 抽象方法 作为类方法修饰符,abstract则声明了一种仅有方法头,而没有具体的方法体和操作实现的抽象方法。只含有一个声明,没有方法主体。下面是抽象方法声明时采用的语法: abstract void methodName(); 抽象类中:abstract方法只有方法头的声明,而用一个分号来代替方法体的定义: 子类:在继承的子类中,对于抽象方法要求实现,方法头和抽象方法一样。(如果还有子类,这个类还可定义为抽象类) 抽象方法很重要,在Java编程语言中抽象方法是非常重要的概念。不仅抽象类,在接口里你会大量的用到它。 Java语言概述 * 小结 继承的涵义和概念,是现实什么关系体现? 父类和子类的概念,又叫做什么? 如何定义Java继承关系,关键词是? 继承中属性和方法的特点,this和super关键词的用法 什么是抽象类, Java语言概述 * 作业 做书上课后题1,2 理解Manager继承Employee的例子(代码见我的课后任务包(实验时ftp上下载 ,包括Employee,Manager,InheritanceTest.java)。 通过Manager例子的理解,自己思考工资系统的UML图设计,实现工资系统的例子; 附录 UML说明和 Java语言概述 * 特别例子:继承的应用示范 (点,圆的抽象) +setPoint() +toString() -X: int -Y: intr Point +setRadius() +getRadius() - Circle +getX() +getY() -radius +toString() +area() 点和圆的关系是一种继承关系,圆可以理解成具有半径的点。 Java语言概述 * 6 扩展类继承的应用示范 (见例子5-2) 现在讨论一个继承性的具体例子5-2,点、圆的层次结构。首先建立并使用Point类,然后从point类继承产生Circle类。 程序的模块: (1)模块1:程序定义了一个Point类; (2)模块2:又定义了Circle类,它是从Point类继承来的; (3)应用程序,该程序演示了如何把子类引用指定为父类引用,以及把父类引用强制转换为子类引用 Java语言概述 * (1)创建Circle类,继承了Point类。 (2)在Point类和Circle类中用完全相同的signature(架构)覆盖toString方法。 注意: (1)子类构造函数总是先调用(显式的或隐式地)其父类的构造函数,以创建和初始化子类的父类成员;构造函数不能继承,它们只属于定义它们的类。 (2)父类的实例变量可用Protected限定,因此,从Point衍生Circle类时,Circle类的方法能直接引用坐标x和y,而不必使用get方法来访问。 抽象继承关系(人和员工/学生继承关系) +raiseSalary() +getSalary() +getDescription() -salary : Double Employee +changeMajor() +getMajor() +getDesciption() -Major : String Student +getName(); +getDescription() -name: String Person RETURN PLEASE PREPARE YOUR CLASSES WRITE YOU ASSIGNMENT BEFOREHAND!! PRIOR---NOT ON CLASS * * * Java语言概述 * 第六讲 继承和多态(上) 西亚斯学院计算机系 姜斌 2011年 Java语言概述 * 课堂内容 一、继承的概念 1、继承涵义 2、继承定义,父类和子类定义 3、继承例子 二、类库继承例子 1、Object类 2、例子 三、扩展类 1、继承关系的

文档评论(0)

daijun + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档