Java程序设计教程(第三版)课件 项目五 类的继承与多态(2.0).ppt

Java程序设计教程(第三版)课件 项目五 类的继承与多态(2.0).ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多

【任务透析】packagecn;classPerson{//定义一个父类Person privateStringid;//声明id属性 privateStringname;//声明姓名属性 publicStringgetId(){ returnid; } publicvoidsetId(Stringid){ this.id=id; } publicStringgetName(){ returnname; } publicvoidsetName(Stringname){ this.name=name; } publicPerson(){ super();//此处的super指的是所有类的父类,最顶层的Object System.out.println(你好,我是父类Teacher的无参构造方法!!!!); }}classTeacherextendsPerson{//定义一个子类Teacher,继承于类Person? publicTeacher(){ super(); System.out.println(你好,我是子类Teacher的无参构造方法!); }}?publicclassExtDemo5_2Test{ publicstaticvoidmain(String[]args){ Teachert=newTeacher(); t.setId(2011007); t.setName(何小倩); System.out.println(我的Id是:+t.getId()+我的名字是:+t.getName()); }}【课堂提问】☆.什么时候需要使用继承?☆.如何实现继承?☆.this和super关键字的作用是什么??【现场演练】模仿任务5-2:在父类Book中添加一个无参的构造方法,为子类类XiaoShuo(小说)添加一个无参构造方法,并在各自的构造方法中输出一句提示,观察父类和子类构造方法的调用关系及顺序。并为父类Book的每一个属性添加一个setter()和getter()方法,调用setter()和getter()方法为子类的实例对象赋值。任务三类的多态

【任务描述】任务5-3:在任务5-2的基础上,在父类Person中添加一个run()方法,在子类Teacher中定义和父类相同名字的run()方法。在测试类中,分别生成子类Teacher和父类Person的实例对象,并利用各自的实例对象去调用同名方法run(),观察运行结果。跳至解题思路【必备知识】1.多态的概念多态性是面向对象程序设计的重要特征之一。多态性是指同一个方法名可以有不同的实现体,即不同的方法体。在Java语言中通过以下两种方式来实现多态性:(1)方法重写(也称覆写或覆盖)。(2)方法重载。?2.多态的作用多态是为了实现接口重用,使用对象多态性,以提高代码的可维护性和可扩展性。3.多态的实现(1)方法重写1)重写是发生在继承关系的两个类中,当一个类继承了另一个类,就可以在子类中定义一个与父类中的方法同名的方法,子类中的这个方法就是对父类同名方法的重写,用以实现父类方法所不能实现的功能。2)重写是子类中的方法对父类中已有的方法进行重新定义。3)子类中重写的方法与父类的方法在返回类型、方法名、参数列表上必须完全相同。而且在子类中覆写的方法权限必须大于(或等于)父类中方法的访问权限。Java中有4种访问控制权限:publicprotecteddefault(缺省:什么关键字都不加)private4)当以子类的对象调用与父类同名的方法时,会直接找到子类的方法,而不是父类的同名方法,当发现子类中不存在这个方法时,才会调用父类中的同名方法。(2)方法重载方法重载是发生在同一个类中,即在同一个类中存在几个同名方法,方法参数类型或个数有所区别。如果参数类型和个数完全一样,只是方法返回类型不同,不属于重载。【解题思路】 任务5-3:1.在父类Person中添加一个run(),在该方法中输出一句提示“我是父类Person的run()方法!”。2.在子类Teacher中定义一个和父类的方法run(),在该方法中输出一句提示“我是子类Teacher的run()方法!”。3.声明一个测试类,分别生成子类Teacher

您可能关注的文档

文档评论(0)

balala11 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档