继承的使用.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文档。上传文档
查看更多
继承的使用.ppt

* * * * * 本章任务 优化电子宠物系统 实现汽车租赁系统计价功能 为什么使用继承 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 { } 只能继承一个父类 继承关键字 理解继承4-1 子类访问父类成员 访问父类属性 访问父类方法 使用super关键字 super.name; super.print(); super代表父类对象 理解继承4-2 有些父类成员不能继承 private成员 子类与父类不在同包,使用默认访问权限的成员 构造方法 演示示例:不能继承的情况 理解继承4-3 访问修饰符protected 可以修饰属性和方法 本类、同包、子类可以访问 访问修饰符总结 访问修饰符 本类 同包 子类 其他 private √ 默认(friendly) √ √ protected √ √ √ public √ √ √ √ 理解继承4-4 继承后的初始化顺序 演示示例:断点追踪初始化过程 父类属性 子类属性 父类构造方法 子类构造方法 在何处使用继承 何时使用继承? 继承与真实世界类似 只要说“猫是哺乳动物”,猫的很多属性、行为 就不言自明了 藏獒是一种狗 继承是代码重用的一种方式 将子类都有的属性和行为放到父类中 符合is-a关系的设计使用继承 小结2-1 继承使用什么关键字? 子类可以继承父类的哪些成员? 使用继承有什么好处? 小结2-2 阅读代码,说出运行结果 class Car { private int site = 4; //座位数 Car(){ System.out.println (载客量是+site+人); } public void setSite(int site){ this.site = site; } void print(){ System.out.print(载客量是+site+人); } } class Bus extends Car { Bus(int site){ setSite(site); } } public static void main(String[] args) { Bus bus = new Bus(20); bus.print(); } 载客量是4人 载客量是20人 方法重写 子类中有和父类相同签名的方法,会如何? 演示示例:断点调试print()方法 子类重写父类方法 继承中的构造方法 构造方法也会被重写吗? 如何在子类中调用父类的构造方法? super(); super(参数表); 演示示例:断点调试super用法 可以被默认添加 只能是构造方法的第一条语句 不能被继承因此不能重写 指导——优化电子宠物系统2-1 训练要点: 继承 子类重写父类方法 理解继承中的初始化过程 需求说明: 优化电子宠物系统 使用继承实现Dog类和Penguin类 打印宠物信息 讲解需求说明 指导——优化电子宠物系统2-2 实现思路: 完成时间:20分钟 继承 抽象类 以下代码有什么问题? Java中也使用抽象类,限制实例化 Pet pet = new Pet (贝贝,20,40); pet.print(); 实例化Pet没有意义 public abstract class Pet {

文档评论(0)

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

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

1亿VIP精品文档

相关文档