




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第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. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- DB32/T 3988-2021优质中熟中粳稻生产技术规程
- DB32/T 3816-2020农田管道输水灌溉工程技术规范
- DB32/T 3761.42-2021新型冠状病毒肺炎疫情防控技术规范第42部分:运输机场
- DB32/T 3539-2019水稻干尖线虫病防治技术规程
- DB32/ 4438-2022印刷工业大气污染物排放标准
- DB31/T 990-2016轻型汽车用发动机能效等级及测量方法
- DB31/T 987-2016基层农产品检测机构设置技术规程
- DB31/T 892-2015企业能源管理标准体系编制指南
- DB31/T 755-2018体育旅游休闲基地服务质量要求及等级划分
- DB31/T 614-2012节能、低噪声型冷却塔技术性能要求
- 2025年农村个人果园承包合同
- 湖北省武汉市2025届高三年级五月模拟训练试题数学试题及答案(武汉五调)
- 医师挂证免责协议书
- 2025年数控技术专业毕业考试试题及答案
- 济南民政离婚协议书
- 车牌租赁协议和抵押合同
- 2025年内蒙古自治区初中学业水平考试数学模拟试题 (一)(含答案)
- 四川省(科大讯飞大数据)2025届高三第二次教学质量联合测评生物试题及答案
- 《绿色建筑施工培训课件》资料
- GA 1812.3-2024银行系统反恐怖防范要求第3部分:印钞造币企业
- 【公开课】+滑轮-人教版(2024)初中物理八年级下册
评论
0/150
提交评论