- 1、本文档共16页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第10章 构造器
第10章 构造器 构造器在前面的章节里的代码,读者已经看到很多次了。通过用new关键字来调用构造器使其对象在内存中创建出来。下面将要详细的介绍构造器的一些知识。通过本章的学习,读者应该能够完成如下几个目标。 了解什么是构造器。 熟练掌握如何创建构造器。 熟练掌握构造器的使用,包括构造器如何调用等问题。 了解构造器的一些基本机制。 10.1 什么是构造器 在日常生活中,盖房子需要工具和工人,通过工人使用这些工具,来修建一个房子。在Java中,构造器就好比是工具,而new关键字就是工人,通过new关键字和构造器结合来创建对象。 10.1.1 构造器的使用 要建立对象就要使用new关键字来建立对象,这是建立对象唯一的方法。下面介绍构造器的语法组成。 类的修饰符 类的名称(参数列表) { //方法体 } 构造器可以使用的修饰符有public、protected、default、private,不写即为default类型的。 构造器的名称必须要和类的名称相同。 不能有返回值,void也不行。 构造器的参数可有可无。有一个也可有多个参数。 10.1.2 被修饰的构造器 构造器是可以被修饰符修饰的,不同的修饰符修饰构造器也具有不同的效果,本小节通过使用不同的修饰符来进行代码演示。 10.1.3 构造器方法与普通方法的区别 构造器方法和普通的方法是有一定区别,主要是功能上、修饰符上、返回值上和命名上有本质的区别。区别如下: 构造器是为了创建一个类的对象实例,也可以在创建对象的时候使用。 方法是为了执行相应的方法体。即Java代码。 构造器可以被修饰为public、protected、default、private类型,但不能修饰为abstract、final、native、static、synchronized 方法可以修饰为除了protected、native外的修饰符。 构造器没有返回值也没有void。 方法没有返回值或有任何类型的返回值。 构造器的名称要和类的名称相同。 方法的名称可以任意起,但要注意标识符的命名规则。使其更具有意义。 10.2 如何实例化一个对象 所谓实例化就是在内存中实实在在的创建一个对象,在日常生活中就好比创造了一个东西出来。而在Java中,实例化一个对象用new关键字来完成。下面先介绍new关键字的语法以及通过一个例子来演示。 new 构造器的名称(参数列表) new为Java关键字要注意大小写。 构造器的名称要和类的名称相同。 通过调用构造器方法来对这个对象进行一些必要的初始化。 用new关键字实例化对象后返回该对象的引用。 10.3 构造器的使用 通过前面的介绍,读者已经对构造器有了基本的了解。但是使用构造器也是有一些注意事项的。在本节里介绍构造器在父子类中是如何使用的。 10.3.1 构造器的调用 构造器的调用一般有两种情况,一般是在本类里调用或在同包下的另一个类调用,另一种情况是子类调用父类的构造器的。下面通过代码来分别演示。 10.3.2 构造器的重载 所谓构造器的重载和方法的重载是一样的,重载就好比日常生活中人的名字,有大名有小名,但这些名字都指的是这个人,不同点就是让这个人去做的事情可能不一样。这个和Java里的方法的重载很相似。下面来看一下重载的要求。 构造器的重载的方法名称相同,但参数列表不相同。如:参数个数和参数类型等。 构造器的重载的方法是没有返回值的。 构造器不能被继承,这和方法有所区别。 构造器的修饰符只有public、private、protected这三个。 10.3.3 父子类间的构造器的调用流程 在前面学习过用new关键字来创建一个对象,但在继承关系发生时,父类与子类是如何创建对象的呢。它们的顺序又是什么样的呢。 详细的步骤如下所述。 在用new关键字创建对象aceing的时候。执行new aceing()会进入到aceing对象的构造器方法体内。 因为继承的关系,会默认调用方法super进入到父类bike对象的构造器方法体内。 对父类bike对象进行初始化。父类的构造器方法执行完毕后回到子类的构造器继续执行。 执行子类的构造器方法,并初始化数据。 10.3.4 如何自定义构造器 自定义的构造器已在前面的代码中多次使用。所谓自定义构造器就是不显式的定义构造器,编译器就是自动地生成一个无参的构造器,但是一旦显式的定义了一个构造器的话,编译器就不会自动生成了。下面用代码演示如何自定义构造器。 public class test { //定义一个无参的构造器 public test() { //该构造器的方法体 } //具有两个参数的构造器 public test(String i, int n) { //该构造器的方法体 }} 10.4 什么是单子模式
您可能关注的文档
- 私人银行开业仪式.ppt
- 秋天到课件(PPT 30页).ppt
- 种子基础知识(DOC 108页).doc
- 秋天的图画课件(PPT 32页).ppt
- 种子通关护照学生学习体验卡优惠方案.doc
- 科勒厨卫秋季促销方案.doc
- 科协上半年工作总结及计划.doc
- 科协工作总结及计划.doc
- 秋新品上市陈列(第一批、推广).ppt
- 科学之光之天工开物课件(PPT 33页).ppt
- 甘肃省2024-2025学年高二上学期期末考试含答案(9科试卷).pdf
- 浙江省温州市浙南名校联盟2024-2025学年高一下学期2月开学考试地理含答案.pdf
- 浙江省温州市浙南名校联盟2024-2025学年高二下学期2月开学考试含答案(9科试卷).pdf
- 广东省茂名市信宜市2024-2025学年高二上学期1月期末考试英语含答案.pdf
- 板块1 专题10 选择题专项突破分级训练21 2025《衡中学案》高考二轮总复习 化学含答案.doc
- 浙江省温州市浙南名校联盟2024-2025学年高二下学期2月开学考试政治含答案.pdf
- 河南省许昌市2024-2025学年高二上学期期末考试含答案(9科试卷).pdf
- 浙江省温州市浙南名校联盟2024-2025学年高一下学期2月开学考试生物含答案.pdf
- 广东省茂名市信宜市2024-2025学年高二上学期1月期末考试政治含答案.pdf
- 甘肃省2024-2025学年高二上学期期末考试 历史含答案.pdf
最近下载
- 保护生物学--物种多样性及保护.ppt VIP
- 《中职心理健康与职业生涯》全套教学课件(共6章完整版).pptx VIP
- simphoenixvs500变频器说明书(打印版).docx VIP
- 普通高中学业水平考试合格考仿真模拟信息技术.doc VIP
- 车驾管业务知识考试题库(含答案).pdf
- 兼职社保合同范本.docx VIP
- 企业如何制定气候变化风险管理方案.pptx
- (6篇)带头严守政治纪律和政治规矩,维护党的团结统一等四个方面存在的问题与整改材料.docx VIP
- 2025年湖南有色金属职业技术学院单招职业适应性测试题库(考点梳理).docx VIP
- 数据结构与算法期末复习题.doc VIP
文档评论(0)