- 1、本文档共34页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
java继承经典教程解读
练习——编写测试代码运行 需求说明: 编写测试代码运行 完成时间:5分钟 总结 如何继承一个类? 继承有什么好处? 抽象类和抽象方法的特点是什么? 面向对象设计的步骤是什么? 作业 课后作业 必做 教员备课时在此添加内容 选做 教员备课时在此添加内容 提交时间:xxx 提交形式:xxx 预习作业 背诵英文单词 教员备课时在此添加内容 方法重写必须满足如下要求: 重写方法和被重写方法必须具有相同的方法名; 重写方法和被重写方法必须具有相同的参数列表; 重写方法的返回值类型必须和被重写方法的返回值类型相同或者是其子类; 重写方法的不能缩小被重写方法的访问权限。 在子类中可以通过super关键字来访问父类的成员。 super必须是出现在子类中(子类的方法和构造方法中),而不是其他位置。 是访问父类的成员,例如父类的属性、方法、构造方法。 注意访问权限的限制,例如无法通过super访问private成员。 * 继承条件下构造方法的调用规则如下: 如果子类的构造方法中没有通过super显式调用父类的有参构造方法,也没有通过this显式调用自身的其他构造方法,则系统会默认先调用父类的无参构造方法。在这种情况下,写不写“super();”语句,效果是一样的。 如果子类的构造方法中通过super显式调用父类的有参构造方法,那将执行父类相应构造方法,而不执行父类无参构造方法。 如果子类的构造方法中通过this显式调用自身的其他构造方法,在相应构造方法中应用以上两条规则。 特别注意的是,如果存在多级继承关系,在创建一个子类对象时,以上规则会多次向更高一级父类应用,一直到执行顶级父类Object类的无参构造方法为止。 * * * * * * * 作业分为课后作业和预习作业两部分。 1. 课后作业又分为必做部分和选择部分,请各位老师根据授课学员实际水平安排相应的作业。 其中: (1)必做部分要求全体学员课后必须完成提交的作业; (2)选择部分是针对学习能力较强的学员在完成了必做部分作业之后,要求完成的作业。 2. 预习作业 理论课预习作业包括了英文单词背诵和下一章节理论课教学内容的预习; 上机课预习作业包括了下一章节上机课教学内容的预习。 * 继承 第二章 回顾及作业点评 如何从现实世界抽象出类? 构造方法的语法要求是什么? static和final的含义是什么? 请一位同学到白板上画出Dog类的类图。 预习检查 如何继承一个类? 使用继承有什么好处? 抽象类和抽象方法的特点是什么? 本章任务 优化电子宠物系统 实现汽车租赁系统计价功能 掌握继承的优点和实现 掌握子类重写父类方法 掌握继承下构造方法的执行过程 掌握抽象类和抽象方法的使用 掌握final修饰属性、方法和类 本章目标 为什么使用继承 2-1 这两个类图有什么问题? - name:String - health:int - love:int - strain:String Dog + print():void + getName():String + getHealth ():int + getLove():int + getStrain:String + Dog() - name:String - health:int - love:int - sex:String Penguin + print():void + getName():String + getHealth ():int + getLove():int + getSex():String + Penguin() 使用继承优化设计 将重复代码抽取到父类中 为什么使用继承 2-2 使用继承优化后: 子类与父类是is-a关系 减少代码量 方便修改代码 如何使用继承 使用继承 编写父类 编写子类,继承父类 class Pet { //公共的属性和方法 } class Dog extends Pet { //子类特有的属性和方法 } class Penguin extends Pet { } 只能继承一个父类 继承关键字 对比 C#用“ : ” 理解继承4-1 子类访问父类成员 访问父类属性 访问父类方法 使用super关键字 super.name; super.print(); 演示示例:super用法 super代表父类对象 理解继承4-2 有些父类成员不能继承 private成员 子类与父类不在同包,使用默认访问权限的成员 构造方法 演示示例:不能继承的情况 理解继承4-3 访问修饰符protected 可以修饰属性和方法 本类、同包、子类可以访问 访问修饰符总结 访问
文档评论(0)