版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第10章构造器在前面的章节里,构造器的代码读者已经看到很多次了。在
Java中,通过用new关键字来调用构造器使其对象在内存中创建出来。10.1
什么是构造器在日常生活中,盖房子需要工具和工人,通过工人使用这些工具,来修建一个房子。在Java中,构造器就好比是工具,而new关键字就是工人,通过new关键字和构造器结合来创建对象。使用构造器来初始化对象,并且可以通过这个方法为对象分配内存并做一些其他的初始化工作,还可以使用构造器来完成一些其他的操作。10.1.1
构造器的使用要建立对象就要使用new关键字,这是建立对象唯一的方法。介绍构造器的语法组成如下所示。类的修饰符类的名称(参数列表){//方法体}10.1.2
被修饰的构造器和其他的方法一样,构造器也可以使用public、private等修饰符进行修饰,并且使用不同修饰符进行修饰的构造器也具有不同的效果,在本节中就通过使用不同的修饰符来进行代码的演示。10.1.3
构造器方法与普通方法的区别构造器方法和普通的方法是有一定区别,主要是功能、修饰符、返回值和命名上有本质的区别。10.2
如何实例化一个对象实例化就是在内存中实实在在地创建一个对象,在日常生活中就好比创造了一个东西出来。而在Java中,实例化一个对象用new关键字完成。10.3
构造器的使用通过前面的介绍,读者已经对构造器有了基本的了解。但是使用构造器时有一些注意事项。本节将介绍构造器在父子类中是如何使用的。10.3.1
构造器的调用构造器和方法、成员变量是不同的,是不能够被继承的。构造器的调用一般有两种情况,一般是在本类里调用或在同包下的另一个类调用,另一种情况是子类调用父类的构造器的。下面通过代码分别演示。10.3.2
构造器重载在实际的程序开发中,在创建同一个类的不同对象时所得知的信息时不同的。例如,在学生类中有姓名、年龄、学号、班级等,在创建学生对象的时候,有时知道所有的信息,有时只知道一部分学生信息,这时就需要使用不同的构造器。Java中为了解决这个问题,可以将构造器进行重载,可以使用创建对象时有更多选择的空间。10.3.3
父子类间的构造器的调用流程前面学习了用new关键字来创建一个对象,但在继承关系发生时,父类与子类是如何创建对象的呢?它们的顺序又是什么样的呢?如果没有在构造器中说明所调用的构造器方法是父类的,编译器会自动将杜奥用父类无参构造器的代码添加为构造器代码的第一句。下面通过一个例子来演示构造器是如何调用的。10.3.4
如何自定义构造器自定义的构造器已在前面的代码中多次使用。所谓自定义构造器就是不显式地定义构造器,编译器就是自动地生成一个无参的构造器,如果一旦编写了任意一个构造器,无论是否是有参构造器,系统就不再提供默认的无参构造。10.4
什么是单子模式单子模式是Java模式工厂里的一种,所谓单子模式,就是某一个类在同一时刻只允许有一个对象。单子模式就是把构造器修饰为private类型的,用一个public类型的方法返回该对象的引用。10.5
构造器在程序中是何时运行的前面的章节里介绍了构造器是为了创建对象并对其对象的成员变量进行初始化等操作,那么在构造器运行前系统执行什么呢,之后又执行什么呢?下面总结如下:加载要创建该对象的父类,以及成员变量和其他继承关系。加载该类的静态块和静态成员变量,并对其进行初始化等操作。静态块和静态成员变量加载完毕后创建对象并加载非静态成员变量,并对其进行初始化等操作。执行构造器里的方法体,完成后该类的对象创建完毕。父类的运行顺序和该类的顺序是一样的。10.6
综合练习看下面的程序有什么错误。编写一个构造器重载的程序,在每一个构造器中显示一条语句。10.7
小结本章介绍了构造器的知识,以及它的使用和注意事项。了解构造器方法的执行顺序对了解程序
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025企业管理资料合同期满解除劳动合同文档范本
- 2025涵洞砌体施工合同
- 辩论技巧与学生思维表达的融合
- 血液病定期检查的重要性与早期发现策略
- 2024年免疫分析仪器及试剂项目项目投资申请报告代可行性研究报告
- 个人食堂承包合同2025年度版:食品安全与营养健康服务协议3篇
- 2025年统编版2024高一语文上册阶段测试试卷含答案
- 2025年新世纪版必修二历史上册阶段测试试卷
- 2025年冀少新版八年级历史下册月考试卷含答案
- 2025年沪教版九年级历史上册月考试卷
- 吉林省吉林市普通中学2024-2025学年高三上学期二模试题 生物 含答案
- 《电影之创战纪》课件
- 社区医疗抗菌药物分级管理方案
- 开题报告-铸牢中华民族共同体意识的学校教育研究
- 《医院标识牌规划设计方案》
- 公司2025年会暨员工团队颁奖盛典携手同行共创未来模板
- 新沪科版八年级物理第三章光的世界各个章节测试试题(含答案)
- 夜市运营投标方案(技术方案)
- 电接点 水位计工作原理及故障处理
- 国家职业大典
- 2024版房产代持协议书样本
评论
0/150
提交评论