- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第4章继承与多态 主讲人:程裕强 本章学习目标 理解继承机制 掌握Java类的继承定义 掌握子类对象的构造过程 掌握不同权限符的继承性 掌握成员覆盖,重点是方法重写 掌握final用法 理解多态概念,掌握两种方法多态 掌握抽象类的定义与使用 掌握接口的定义与实现,理解接口与抽象类的异同 掌握抽象类与接口相关的方法多态 掌握Object类 阅读三个改进的数据结构类 了解匿名类 4.1 引例 在第3章我们运用面向对象的思想定义了5个版本的Person类,成功得将Person的属性和操作封装起来。 实际上,Person类具有许多属性和方法,比如人具有身份证号、性别、民族等属性,代码如下。 假设现在需要定义一个学生类型,除了具有人的属性外,还具有学号、专业、班级等属性,Student类代码如下。 public class Person{ //人的属性 public String pid; //身份证号 public String name; //姓名 public boolean sex; //性别 public int age; //年龄 public int nation; //民族 public String address; //地址 //构造器 public Person(){} public Person(基本参数{...} public Person(全部参数){...} //人的一个行为动作 public void speak(){ //说话...} } public class Student{ //人一般属性 public String name; //姓名 public boolean sex; //性别 public int age; //年龄 public String pid; //身份证号 public int nation; //民族 public String address; //地址 // 学生特有的属性 public String sid; //学号 public String major; //专业 public String school; //学校 public String classname; //班级 //构造器 public Student(){} public Student(基本参数){...} public Student(全部参数) {...} //人的一般方法 public void speak(){//说话...} //学生特有操作 public void study() {//学习...} } 从上面的代码很容易发现,Student类与Person类代码重复过多。 再假设现在需要定义“研究生”类,那么属性定义要分为“人的属性”、“学生的属性”和“研究生”专有属性。重复的代码会更多。 学生是一类特殊的人,具备人的基本属性和功能,所以Student类应该是一个特殊的Person类。 每当出现一个新概念时,我们只能从零开始创建这个类吗?是否可以在现有类的基础上创建新的类呢,如何才能更好的实现代码复用?这些问题摆在我们面前,如何解决呢? 4.2 继承机制 在现实世界许多新生事物并不是凭空产生的,往往是建立在原有事物基础上的。比如我们今天使用的汉字就是继承甲骨文发展而来的,无线电话是建立在有线电话基础上的,相对论继承发展了经典力学等等。继承发展是自然界(包括人类社会)的一大自然规律,新的发展不是对前者的否定,而是继承与发展,这与唯物辩证法是一致的。 Java是面向对象的语言,具有继承机制。继承是根据现有类创建新的类的机制,由继承而得到的新类称为子类或派生类,被继承的类称为父类或者基类。子类可以从父类继承属性和方法。 Java是单继承,也就是只有一个父类,所以关键字extends是第三人称单数。如一个类的定义没有使用extends,系统默认该类继承Object类。也就是Java中所有的类都是Object类的子类。 类继承格式如下 修饰符 class 子类名 extends 父类名{ 类成员; } 运用Java继承机制来改进引例中的Student类 public class Student2 extends Person { // 学生的属性 public String sid;
您可能关注的文档
- Internet应用基础 作者 耿增民 第3章 电子邮件.ppt
- Internet应用基础 作者 耿增民 第4章 搜索引擎.ppt
- Internet应用基础 作者 耿增民 第5章 下载和存储Internet资源.ppt
- Internet应用基础 作者 耿增民 第7章 电子商务与网上购物.ppt
- Internet应用基础 作者 耿增民 第8章 网络多媒体.ppt
- Internet应用基础 作者 耿增民 第11章 网络安全.ppt
- Internet应用基础 作者 耿增民 第12章 网页制作和网站建设.ppt
- Internet应用与网页制作 作者 赵丰年 商建云 第06章.ppt
- Internet应用与网页制作 作者 赵丰年 商建云 第10章.ppt
- Internet应用与网页制作 作者 赵丰年 商建云 第11章.ppt
- Java面向对象程序设计 作者 梁燕来 程裕强 第5章 面向对象思想.ppt
- Java面向对象程序设计 作者 梁燕来 程裕强 第6章 异常处理.ppt
- Java面向对象程序设计 作者 梁燕来 程裕强 第7章 Java API.ppt
- Java面向对象程序设计 作者 梁燕来 程裕强 第8章 字符串.ppt
- Java面向对象程序设计 作者 梁燕来 程裕强 第9章 泛型与集合框架.ppt
- Java面向对象程序设计 作者 梁燕来 程裕强 第11章 多线程.ppt
- Java面向对象程序设计 作者 梁燕来 程裕强 第12章 JDBC.ppt
- Java面向对象程序设计 作者 梁燕来 程裕强 第14章 保留部分.ppt
- jQuery程序设计基础教程 工业和信息化普通高等教育“十二五”规划教材 作者 姚敦红 杨凌 张志美 李晓黎 等编著 第1章.ppt
- jQuery程序设计基础教程 工业和信息化普通高等教育“十二五”规划教材 作者 姚敦红 杨凌 张志美 李晓黎 等编著 第2章.ppt
最近下载
- 登革热诊疗方案(2024年版).pdf VIP
- 人教版PEP小学英语六年级上册第一单元测试卷.pdf VIP
- 《装配式装修标准化模块化设计 》课件——模块七:装配式装修卫浴部品体系设计.ppt VIP
- 《全装饰住宅部品集成技术》课件——模块六:集成厨房部品体系设计装配式装修.pptx VIP
- 破晓剧本(红色剧目).docx VIP
- 《装配式装修标准化模块化设计 》课件——模块六:集成厨房部品体系设计装配式装修.ppt VIP
- 国际投资(第六版)课件 SolMcL_6e_ch10.ppt VIP
- 《装配式建筑装饰装修》习题-04收纳系统设计.docx VIP
- 装配式建筑装饰装修-标准化.pptx VIP
- 常用电子管参数及脚位5.doc VIP
文档评论(0)