- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
淮海工学院计算机课程4.2构造函数的继承与重载4.2.1构造函数的重载
4.2 构造函数的继承与重载 4.2.1 构造函数的重载 指同一个类中存在着若干个具有不同参数列表的构造函数。 出现重载情况时,创建该类对象的语句会自动根据给出的实际参数的数目、类型和顺序来确定调用哪个构造函数来完成新对象的初始化工作。 一个类的若干构造函数之间可以通过关键字this来互相调用,目的是最大限度地利用已有程序,提高程序的抽象、封装程度,减少程序维护工作量。 注意:this语句必须是整个构造函数的第一个可执行语句。 4.2.2 构造函数的继承 指子类可以继承父类的构造函数。 构造函数继承应遵循的原则: 1)子类无条件地继续父类的不含参数的构造函数; 2)如果子类自己没有构造函数,则将继承父类的无参构造函数作为自己的构造函数;如果子类自己定义了构造函数,则在创建新对象时,先执行从父类继承来的无参构造函数,然后再执行自己的构造函数; 3)对于父类的含参构造函数,子类可以通过在自己构造函数中使用super关键字来调用它,但这个调用语句必须是子类构造函数的第一个可执行语句。 关于构造函数的访问权限 一个类没有定义构造函数时,系统提供的默认无参构造函数的访问权限与该类的访问权限相同; 当类的访问权限与该类的构造函数的访问权限定义的范围不同时,则对该构造函数的访问权限是其与该类的访问权限的交集。比如:类A的构造函数是protected,而类A本身是默认的,则对类A的构造函数的访问权限是默认的。 例:ConstructorOverLoad.java public class ConstructorOverLoad //构造函数的继承和重载 { public static void main(String args[]) { D200_Card my200 = new D200_Card1234,50.0,200,0.1); System.out.println(my200.toString()); } } abstract class PhoneCard { double balance; abstract boolean performDial(); double getBalance() { return balance; } } abstract class Number_PhoneCard extends PhoneCard { long cardNumber; int password; String connectNumber; boolean connected; Number_PhoneCard() //构造函数1:无参 { } Number_PhoneCard(long cn) //构造函数2:带1个参数 { this(); //调用构造函数1 cardNumber = cn; } Number_PhoneCard(long cn,int pw) //构造函数3:带2个参数 { this(cn); //调用构造函数2 password = pw; } Number_PhoneCard(long cn,int pw,double b) //构造函数4:带3个参数 { this(cn,pw); //调用构造函数3 balance = b; } Number_PhoneCard(long cn,int pw,double b,String c) //构造函数5:带4个参数 { this(cn,pw,b); //调用构造函数4 connectNumber = c; } boolean performConnection(long cn,int pw) { if(cn == cardNumber pw == password) { connected = true; return true; } else return false; } } class D200_Card extends Number_PhoneCard { doub
您可能关注的文档
- 华阳中学三维七段单元教学课堂设计授课教师李勇时间2011年月日.doc
- 协方差与相关系数。.ppt
- 单一点电荷建立的电场N个电荷所建立的电场连续电荷所建立的电场高斯.ppt
- 医院对科室的绩效考核.ppt
- 单元变异系数.doc
- 单相交流电路.ppt.ppt
- 单狭缝绕射实验结论-正修科技大学.ppt
- 南京大学物理实验教学中心-复旦大学物理教学实验中心FudanPhysics.ppt
- 南浔区商品住房销售价格备案清单.doc
- 南海区市政基础设施工程质量安全监督登记表-南海区行政服务中心.doc
- 初中化学气体制备实验中废弃物无害化处理技术研究课题报告教学研究课题报告.docx
- 初中生食品安全教育与食品安全法律法规教育教学研究课题报告.docx
- 初中物理实验操作数字教育资源设计与开发中的版权问题与合规性探讨教学研究课题报告.docx
- 人工智能教育项目式学习中的教学策略优化与效果评价教学研究课题报告.docx
- 人工智能教育平台移动应用界面设计在小学语文思维训练教学中的优化策略教学研究课题报告.docx
- 生成式AI在小学数学教学中的创新应用与学生学习成效分析教学研究课题报告.docx
- 中职护理教学中模拟病房与临床技能的课题报告教学研究课题报告.docx
- 2025年口服降糖食品跨境电商出口法律合规指南报告.docx
- 2025年口服降糖食品行业市场需求与功能成分研发政策法规解读.docx
- 高中化学课程:校园废旧化学品回收与环保法规遵守研究教学研究课题报告.docx
原创力文档


文档评论(0)