- 1、本文档共33页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第05章 的子类与继承
第5章子类与继承重点和难点主要内容子类与父类子类的继承性子类对象的特点成员变量的隐藏和方法重写super关键字final关键字对象的上转型对象继承与多态abstract类与abstract方法面向抽象编程开-闭原则难点成员变量的隐藏和方法重写开-闭原则5.1 子类与父类当我们准备编写一个类的时候,发现某个类已经有了我们所需要的成员变量和方法,假如我们想复用这个类中的成员变量和方法,即在所编写的类中不用声明成员变量就相当于有了这个成员变量,不用定义方法就相当于有了这个方法,那么我们可以将编写的类声明为这个类的子类。5.1 子类与父类在类的声明中,通过使用关键字extends来声明一个类的子类,格式如下:?class 子类名 extends 父类名 { … }如果类声明语句中没有extends子句,则该类为java.lang包中的Object的子类5.2 子类的继承性在子类中,我们可以不用声明就使用父类的方法和成员变量,称为继承子类继承的父类方法和成员变量可以当作自己的方法和成员变量一样被子类的实例方法使用如果子类中定义的实例方法不能操作父类的某个成员变量或方法,那么该成员变量或方法就没有被子类继承。5.2.1 子类和父类在同一包中的继承性访问限制修饰符不仅限制了对象对自己成员变量的操作和方法的调用,也限制了继承性当子类和父类在同一个包中时父类中的private的成员变量和方法不会被子类继承当子类和父类不在同一个包中时父类中的private和friend的成员变量和方法不会被子类继承5.2.3 protected的进一步说明类A中的protected成员变量和方法可以被它的直接子类和间接子类继承,如B是A的子类,C是B的子类,D又是C的子类,那么B、C和D类都继承了A类的protected成员变量和方法。如果用D类在D中创建了一个对象,那么该对象总是可以通过“.”运算符访问继承的或自己定义的protected变量和protected方法的5.2.3 protected的进一步说明如果在另外一个类( Other类)中用D类创建了一个对象,该对象通过“.”运算符访问protected变量和protected方法的权限取决与是否与该变量、方法的所属类是否在同一个包中对于D中的protected成员变量和方法:只要Other类和D类在同一个包中,Other类就可以访问这些方法和变量如果D的对象的protected成员变量或方法是从父类继承的,那么就要一直追溯到该protected成员变量或方法的“祖先”类,即A类,如果Other类和A类在同一个包中,那么object对象能访问继承的protected变量和protected方法5.2.4 继承关系的UML图父类子类5.2.5 关于instanceof运算符instanceof是双目运算符,其左面的操作元是对象,右面的操作元是类,当左面的操作元是右面的类或子类所创建的对象时,instanceof运算的结果是true,否则是false。例如,对于例5-1中的People、Student、UniverStudent类,zhang和zhaoqiang分别是student和univerStudent类的对象,则Zhaoqiang instanceof PeopleZhaoqiang instanceof StudentZhang instanceof StudentZhang instanceof PeopleZhang instanceof UniverStudenttruefalse5.3 子类对象的特点创建一个子类的对象时,子类和父类的所有成员变量都分配了内存空间,但只将其中一部分(子类继承的那部分)作为分配给子类对象的变量父类中的private成员变量尽管分配了内存空间,也不作为子类对象的变量,即子类不继承父类的私有成员变量。同样,如果子类和父类不在同一包中,尽管父类的友好成员变量分配了内存空间,但也不作为子类的成员变量,即如果子类和父类不在同一包中,子类不继承父类的友好成员变量。5.3 子类对象的特点子类创建对象时似乎浪费了一些内存!(如父类中的private成员变量分配了内存空间,但它既不是子类的对象的变量,也不是父类对象的变量,因为还没有父类对象)这部分内存似乎成了垃圾一样?NO!子类中还有一部分方法是从父类继承的,这部分方法却可以操作这部分未继承的变量。5.4 成员变量的隐藏和方法重写成员变量的隐藏子类的成员变量名(student.a)=父类的成员变量名(people.a)此时,student类中的方法所操作的变量a是指谁?若子类(student类)的对象想要操作父类的变量(people.a)?Student 的 a变量调用从父类继承的方法操作隐藏的成员变量5.
您可能关注的文档
- 电视机与电脑同步显示的设置方法.doc
- 白盒的测试技术.doc
- 百事沟通会的正稿.ppt
- 病的例讨论-麻醉科医师应当如何会诊外科病人--薛张刚教授.ppt
- 皮山分的布式项目方案.doc
- 百会客户的关系管理.pdf
- 百通世纪的中药专一直播3.7.ppt
- 盐碱的地改造项目设计报告.pdf
- 盆的底手术的并发症及防治.ppt
- 监控AD 的DS.pptx
- 2025年昆明市公安局五华分局勤务辅警招聘考试试题(含答案).pdf
- 2025年内江市隆昌市教育和体育局选拔教师考试笔试试题(含答案).pdf
- 2025年宁夏回族自治区地方金融监督管理局下属事业单位招聘考试笔试试题(含答案).pdf
- 2025年青海省图书馆招聘考试笔试试题(含答案).pdf
- 2025年湖北省民族宗教事务委员会下属事业单位招聘考试笔试试题(含答案).pdf
- 2025年湖南省退役军人事务厅下属事业单位招聘考试笔试试题(含答案).pdf
- 2025年内蒙古自治区审计厅下属事业单位招聘考试笔试试题(含答案).pdf
- 2025年内蒙古自治区监狱管理局下属事业单位招聘考试笔试试题(含答案).pdf
- 2025年宁夏回族自治区工业和信息化厅下属事业单位招聘考试笔试试题(含答案).pdf
- 2025年山东光明电力服务有限责任公司招聘考试笔试试题(含答案).pdf
最近下载
- 长期卧床患者的体位护理技巧.pptx VIP
- JBT14159.3-2022 空气分离设备能效限额第3部分:液化设备.pdf VIP
- 《民用建筑设计通则》图示.docx VIP
- 灭火应急疏散预案.doc VIP
- 铁路内燃、电力司机考试题库.doc VIP
- 新概念英语第一册 Lesson 55-56 课件.ppt VIP
- 2025AI+BI峰会:DeepInsight Copilot 演进史以及未来探索.pdf VIP
- 《临床药学文献阅读汇报抗感染粘菌素在治疗鲍曼不动杆菌感染vap中的应用》课件模板.ppt VIP
- 2025年福建公需课答案.pdf VIP
- 2020四川园林绿化工程说明及计算规则.pdf VIP
文档评论(0)