版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
Java程序设计语言概述5.3构造方法与对象创建5.3构造方法与对象创建
在面向对象中,类是最重要的数据类型,可以用类来声明变量。这一变量称为对象变量,简称对象。与基本数据类型不同,对象声明后还必须创建对象。创建对象的核心任务是根据类定义创建具体对象,通过内存分配和状态初始化将抽象的类转化为程序运行时可操作的实际实例。创建对象也称为对象实例化。对象的创建与类的构造方法密切相关。01构造方法01构造方法
构造方法(Constructor)是Java中用于初始化对象状态的特殊方法,在对象被创建时自动调用。其核心作用是为对象的成员变量赋予初始值,并确保对象在创建时满足必要的约束条件。
构造方法的名称必须与类名完全相同,并且没有返回类型(包括void)。一个类可以定义多个构造方法,多个构造方法通过参数列表不同区分,参数列表不同是指参数的个数不同,或参数个数相同但参数列表中对应的某个参数的类型不同。01构造方法
每个类至少有一个构造方法,如果没有显式定义构造方法,Java编译器会提供一个默认的构造方法,该构造方法没有参数。但是,一旦显式定义了至少一个构造方法(无论有参数还是无参数),编译器就不会自动提供默认的无参构造方法。构造方法的示例如下:classPositiveStudent{privateStringname;//学生姓名privateStringmotto;//人生座右铭//无参构造方法:赋予默认价值观publicPositiveStudent(){name="无名同学";motto="为中华之崛起而读书");}//有参构造方法:接受个性化价值观publicPositiveStudent(Stringname,Stringmotto){=name;//校验座右铭是否符合社会主义核心价值观if(motto.contains("富强")||motto.contains("民主")||motto.contains("文明")){this.motto=motto;}else{this.motto="请树立正确的价值观!";}}02创建对象02创建对象
在Java中,创建对象包括对象声明和根据类定义创建具体对象(内存分配和状态初始化)。
对象声明的本质是定义一个引用变量(ReferenceVariable),该变量用于指向内存中的对象实例,此时引用变量值为null,未指向任何实际对象。一般格式为:类名
对象名;02创建对象例如:PositiveStudentZhangHua;对象声明后使用new关键字创建对象。new运算符是Java对象实例化的核心机制,执行时触发内存分配、默认初始化、构造方法调用等底层操作。如果类中没有定义构造方法,系统会调用默认的构造方法;如果类中定义了构造方法,则调用对应的构造方法。具体例子如下:publicclassExample5_2{publicstaticvoidmain(String[]args){ TigerXiaoHua;//声明对象XiaoHua=newTiger();//使用new和默认构造方法创建对象 TigerXiaoBai;//声明对象XiaoBai=newTiger();//使用new和默认构造方法创建对象 }}02创建对象例子2:publicclassExample5_1{publicstaticvoidmain(String[]args){PositiveStudentZhangHua=newPositiveStudent();//使用默认价值观的无参构造 PositiveStudentLiMing=newPositiveStudent("李明","诚信是人生的第二身份证");//使用自定义价值观的有参构造 }}03使用对象03使用对象
在Java中,对象创建后的使用是其功能实现的核心环节。通过对象引用操作实例成员,可以实现数据交互与行为控制。
创建对象后,可以通过点操作符“.”来实现访问自己的变量和方法调用。1.对象操作自己的成员变量
创建对象后,你可以通过对象来访问和修改成员变量,对象通过操作自身成员变量实现数据管理。访问和修改成员变量通过点操作符“.”来实现。格式如下:对象名.成员变量名;03使用对象2.对象调用自己的方法
每个Java对象都拥有其所属类的方法,这些方法可以被该对象调用。在Java中,对象调用方法是通过使用点“.”操作符来实现的,一旦你有了对象,你就可以使用点“.”操作符来调用它的方法。类中的方法可以操作成员变量,当对象调用该方法时,方法中出现的成员变量就是该对象的成员变量。在方法调用中,需要提供实际参与运算的传入值,称为实际参数(实参),实际参数必须与方法定义时声明的形式参数(形参)对应。格式如下:对象名.方法名(实际参数列表);03使用对象classTiger{Stringname;//老虎的名字intage;//老虎的年龄Stringsex;//老虎的性别voidhunt(Stringprey){System.out.println(age+"岁的老虎"+name+"正在捕猎"+prey);}voideat(Stringprey){System.out.println("老虎"+name+"正在吃"+prey);}}publicclassTigerHunt{publicstaticvoidmain(String[]args){TigerXiaoHua=newTiger();XiaoH="小花";XiaoHua.age=2;Stringprey1="山羊";XiaoHua.hunt(prey1);XiaoHua.eat(prey1);TigerXiaoBai
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026事业单位笔试-甘肃-甘肃影像医学与核医学(医疗招聘)历年参考题库含答案详解
- 2026事业单位笔试-湖南-湖南中药学(医疗招聘)历年参考题库含答案详解
- 2026事业单位笔试-浙江-浙江医学影像(医疗招聘)历年参考题库含答案详解
- 2026事业单位笔试-河北-河北超声医学(医疗招聘)历年参考题库含答案详解
- 2026年包神铁路人员招聘笔试参考试题及详细答案解析
- 2026事业单位笔试-广东-广东临床医学工程技术(医疗招聘)历年参考题库含答案详解
- 2026事业单位笔试-安徽-安徽临床医学工程技术(医疗招聘)历年参考题库含答案详解
- 2026事业单位笔试-天津-天津药物制剂(医疗招聘)历年参考题库含答案详解
- 2026事业单位笔试-四川-四川口腔科(医疗招聘)历年参考题库含答案详解
- 2026事业单位笔试-北京-北京超声医学(医疗招聘)历年参考题库含答案详解
- GJB2489A2023航空机载设备履历本及产品合格证编制要求
- 2025年上海松江国有资产投资经营管理有限公司招聘笔试参考题库含答案解析
- 礼品礼金管理制度
- 2024省技能大赛植物嫁接赛项备考试题库(含答案)
- YBT 129-2017 塑料模具钢模块
- 中医医疗技术手册2013普及版
- 公安民警矛盾纠纷调解培训
- 过去预测未来-行为面试法
- 医院病媒生物防制工作检查表、卫生检查
- 幼儿园教师培训活动如何上好一堂语言活动语言领域课件
- 电路实验设计要求
评论
0/150
提交评论