- 1、本文档共51页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
[理学]java第六章62
6.2 类的继承 6.2.1 成员变量的继承和隐藏 6.2.2 方法的继承、重载与覆盖 6.2.3 null、this、super 6.2.4 构造函数的继承与重载 6.2.1 成员变量的继承和隐藏 1、成员变量的继承 子类可以继承父类所有非私有的成员变量。 父类的所有非私有的成员变量实际上是各子类都拥有的成员变量的集合。 6.2.1 成员变量的继承和隐藏 2、成员变量的隐藏 子类中定义了与父类同名的成员变量,即出现了子类变量对父类变量的隐藏。 子类拥有了两个相同名字的变量,一个继承自父类,另一个由自己定义。 6.2.2 方法的继承、重载与覆盖 1、方法的继承 父类的所有非私有方法作为类的非私有成员,都可被子类继承。 6.2.2 方法的继承、重载与覆盖 2、方法的覆盖 子类可以重新定义与父类同名的方法,实现对父类方法的覆盖。 调用时只需在方法名前面使用不同的类名或对象名作前缀。 子类在重新定义父类已有的方法时,应与父类有完全相同的方法名、返回值和参数列表。 2、方法的覆盖 不能被子类覆盖的方法 子类不能覆盖父类中声明为final的方法。 必须被子类覆盖的方法 子类必须覆盖父类中声明为abstract的方法,否则子类必须是抽象类 。 6.2.2 方法的继承、重载与覆盖 3. 方法的重载 类对自身已有的同名方法的重新定义。 重载时需通过参数列表来区分不同的方法。 参数数目、参数顺序和参数类型的不同区分。 不能通过方法的返回值类型来区分不同的方法。 6.2.3 null、this、super 1、null 是空的意思,代表一个什么也没有的“空”值,一般用来代表尚未存在的对象。 用null先声明一个的空的对象,而暂时不为它开辟内存空间。 6.2.3 null、this、super 2、this this表示当前对象本身,更准确地说,this代表了当前对象的一个引用。 通过引用可以修改对象的域、调用对象的方法。 this.variable; this.method; 多数情况下,this用来把当前对象的引用作为参数传递给其他的对象或方法。 3、super 表示当前对象的父类对象,是当前对象的父类对象的引用。 通过super来实现对父类成员的访问。 1. 用来访问父类被隐藏的成员变量,如: super.variable 2. 用来调用父类中被重写的方法,如: super.Method ( [paramlist] ); 3. 用来调用父类的构造函数,如: super( [paramlist] ); 6.2.4 构造函数的继承与重载 1. 构造函数的重载 指同一个类中存在着若干个具有不同参数列表的构造函数。 1. 构造函数的重载 系统自动根据给出的实际参数的数目、类型和顺序来确定调用哪个构造函数为新对象初始化。 1. 构造函数的重载 一个类的若干个构造函数之间可以相互调用。 应使用关键字this调用,且应是整个构造函数的第一个可执行语句。 2. 构造函数的继承 构造函数的继承遵循以下的原则: 1)子类无条件地继承父类的不含参数的构造函数; 2)如果子类无构造函数,则它将继承父类的无参数构造函数作为自己的构造函数; 3)如果子类有构造函数,创建对象时,它将先执行继承自父类的无参数构造函数,然后再执行自己的构造函数; 2. 构造函数的继承 4) 父类没有定义任何的构造函数,则系统会自动生成缺省构造函数;父类若定义了构造函数(有参数或无参数),则系统就不会再提供缺省构造函数。 因此父类若定义了构造函数,一定要提供一个无参的构造函数。 5) 对于父类的含参数构造函数,子类可在自己构造函数中用super关键字调用,但必须是第一个可执行语句。 2. 构造函数的继承 public BankAccount( ) public BankAccount( String name ) public BankAccount( String name double initBalance ) 2. 构造函数的继承 (1) SaveAccount不专门定义自己的构造函数 SaveAccount sa = new SaveAccouunt( ); 执行继承自父类的无参数构造函数 2. 构造函数的继承 (2) SaveAccount定义自己的构造函数并调用父类的含参数构造函数。 2. 构造函数的继承 (3) 在SaveA
您可能关注的文档
- [理学]D9_4重积分的应用.ppt
- [理学]DFMEA讲义.ppt
- [理学]DreamWeaver最新课件.ppt
- [理学]DS02_线性表.ppt
- [理学]DSP程佩青版课件第2讲.ppt
- [理学]dsp第四章1.ppt
- [理学]DNS.ppt
- [理学]D第六章多元函数的微积分.ppt
- [理学]DSP芯片及CCS环境.ppt
- [理学]EP-chapter3.ppt
- 2024年度党员干部民主生活会班子对照检查材料.docx
- 公司党委领导班子2024年度民主生活会对照检查材料4个带头方面.docx
- 市府办(政府办)领导班子2024年民主生活会会后综合情况报告.docx
- 在2025年市司法局信息宣传工作推进会上的讲话.docx
- 在2025年全省文化旅游高质量发展推进会上的讲话.docx
- 在2025年全区工业、住建大规模设备更新推进会上的讲话.docx
- 党支部2024年组织生活会民主评议党员情况总结报告_1.docx
- 2024年度组织生活会个人对照检查剖析材料.docx
- 镇党委书记2024年度民主生活会对照检查材料1.docx
- 党支部2024年组织生活会民主评议党员情况总结报告.docx
文档评论(0)