- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
Day07总结:
构造函数:
特点:1、函数名和类名相同
2、不用定义返回值类型
3、不可以写return语句
作用:
创建一个对象都会执行这个构造函数,所以构造函数的作用给对象进行初始化。
每一个对象的创建,都必须要通过对应的构造函数进行初始化,对象不初始化是不能用的。
注意:
之前写对象的时候也没有写构造函数?因为该类当中的在没有定义类的情况下有一个默认的空参数的构造函数,方便与该类的对象进行初始化。
如果在类中定义了具体的构造函数,那么默认的空参数构造函数就没有了。
构造函数和一般函数的区别:
格式:
两种函数的格式不同:
构造函数:修饰符 类名(参数列表){}
一般函数:修饰符 返回值类型 自定义函数名(参数列表){}
运行方式
构造函数:构造函数是在对象已经建立就执行对应的构造函数,给对象进行初始化。
一般函数:对象创建后,再调用一般函数。
作用不同
构造函数:是对对应对象进行初始化的,叫做对象已建立时要做什么事情?
一般函数:给对象提供更多的功能,方便与对象的调用。
调用次数
构造函数:对象创建时,就调用一次,因为初始化动作最先执行,只执行一次
一般函数:对象创建后,可以被多次调用。
什么时候定义构造函数呢?
分析具体事务时,该事务已经存在,就应该具备一些属性值,或者行为,那么将这些内容都定义在构造函数中。一个类中构造函数可以有多个,而且是以重载的形式存在。
实现代码:
Class CarDemo
{
Car c=new Car();
C.show();
Car c1= new Car();
C.show();
}
Class Car
{
Private int num;//为什么要定义为私有?因为汽车禅城都要有4个轮胎,所以把这些属性定义到构造 函数中,在对象进行初始化的时候就已经有了4个轮胎
Car()
{
Num=4;
}
//当有五个的轮胎的车生产时。
Car(int a)
{
Num=a;
}
Public void setNum()//为什么要写一般函数?当num进行了私有化时就相当于 把它进行了封装,这只是提供了一种访问它的方式。
{
Return num;
}
Public int getNum()
{
Return num;
}
Public void show()
{
Sop(num);
}
}
总结:当汽车生产的时候都有有四个轮胎,我们可以理解为这个属性为汽车这个对象已经存在的事物,那么我们就可以定在在构造函数中,但是当我们需求发现改变的时候,比如说当我们要生产有五个轮胎的汽车的时候,这时候就应该有这样的功能来实现它,那么就要定义构造函数的重载形式来表示轮胎是可以设置。
构造函数的内存分析:
实现代码:
Class person
{
Private String name=人;;//显示初始化在默认初始化之后。正确是这样的
Private int age=90;
Person()//默认初始化始终是第一位。
{
Name=baby;
Age=1;
}
Person(String n)
{
Name=n;
}
Person(String n ,int a)
{
Name=n;
Age=a;
}
Public String setName(String n);
{
Name=n;
}
Public String getName()
{
Return name;
}
Public void setAge()
{
Age=a;
}
Public int getAge()
{
Return age;
}
Public void speeak()
{
Sop(name+age);
}
}
Class PersonDemo
{
Person p=new Person(zhangsan);
}
内存分析如下图:
小细节:
构造函数中是可以写return语句的,因为当构造函数中存在判断的时,可以写return,作用就是结束语句。
同样构造函数是可以添加void的,这样的话就不是构造函数了,就成为了一般函数了。
Eg:实现代码:
Void Person()
Person(int a)
{
If(a0||a130)
{
Sop();
Return;//作用就是结束该判断语句
}
Sop()://当写了return语句时,这句话是不能执行的。
Age=a;
}
构造代码块:
构造代码块,定义在类中,是一个独立的代码块,作用给所有对象进行初始化,在构造函数之前执行。
与局部代码块的区别:局部代码块定义在函数中,用来定义变量的生命周期。
实现代码:
Eg:
{
Cry();//这就是一个构造代码块,因为人都具有哭的这个行为,不管是有姓名没姓名还是大人还是小孩都有这个行为,那么就
您可能关注的文档
最近下载
- 《膝关节前后交叉韧带损伤》课件.ppt VIP
- 产钳和胎头吸引助产课件.pptx VIP
- 前交叉韧带损伤学习课件.pptx VIP
- GeForce GTX 1070Ti显卡电路图纸参考 PG411 Rev A00.pdf VIP
- 2025-2026学年小学美术五年级上册人美版·北京(主编杨力)(2024)教学设计合集.docx
- 学堂在线 生活英语进阶 章节测试答案.docx VIP
- 一汽-奔腾B50-产品使用说明书-奔腾B50 2014款1.6MT伙伴-CA7165MT4-B50伙伴用户手册.pdf VIP
- 八年级数学下册重难点压轴题突破专项(苏科版)06平行四边形(五大题型,45题)含答案与解析.pdf
- 角膜地形图与圆锥角膜.ppt VIP
- 2025四川内江市总工会招聘工会社会工作者14人笔试备考题库及答案解析.docx VIP
文档评论(0)