首页 > 编程知识 正文

构造函数没有返回值类型,构造函数有返回值吗

时间:2023-05-05 10:27:37 阅读:48736 作者:4819

构造函数总结

概念: JVM在创建对象时自动调用的函数

角色:在创建对象时为对象的成员变量赋值;

写法:

修饰符:可以用权限修饰符(public、private等)修饰; 不得用静态修饰;

返回类型:没有返回类型。 也没有语音识别。

函数名称:必须与类名完全相同;

参数列表:可以根据要求重新加载。

return语句:有,但一般不需要写;

运行流程:

创建对象时,JVM遇到new关键字,首先在堆内存中打开对象空间; 然后,在对象空间中将空间分配给成员变量,并分配默认值;

然后,根据new关键字后面的内容,调用适当的构造函数进入堆栈执行; 等待构造函数运行结束并完成对象的创建。

默认构造函数:

如果所有类都至少有一个构造函数,并且一个类没有编写构造函数,编译器将为您添加一个没有参数的构造函数。 此构造函数是默认的构造函数

在类中编写构造函数后,缺省构造函数将消失

使用详细信息:

构造函数可以调用一般函数;

一般函数不能调用构造函数;

构造函数可以调用构造函数,不能用函数名称调用。 必须使用this关键字调用

在构造函数中使用this语句调用其他构造函数。 this语句必须写在构造函数的第一行中。

构造函数之间相互调用,不能相互调用(递归调用)

1、什么时候需要构造函数?

每次创建对象时使用构造函数;

2、什么时候需要自定义构造函数?

要在创建对象时为成员变量赋值,必须具有自定义构造函数。

3、使用构造函数,可以在创建对象时为对象的成员变量指定初始值。 那么,如果有构造函数,是否需要提供get和set方法?

需要; 因为构造函数只能在创建对象时指定一次值; 如果以后想更改此值,则必须使用set函数; 如果需要获取封装的值,则需要get函数;

构造函数和一般函数的区别

1、从书写格式看:

a )构造函数:没有返回类型、也不能写void的构造函数的函数名称必须与类名相同。 不能用static关键字修饰;

b )一般函数:需要返回类型(与构造函数的最大区别); 常用函数名称不应与类名相同; 可以用静态修饰,也可以不修饰;

一个函数名称与类名相同,是否是构造函数,必须确定是否有返回类型,否则是构造函数;

2、从呼叫方式看:

a )构造函数)在创建对象时由JVM调用; 一般函数不能调用构造函数;

b )一般函数)在哪里需要哪里)可以在可以调用的构造函数中调用一般函数;

3、从作用上看:

a )构造函数)主要用于在创建对象时为对象的成员变量赋值;

b )一般函数)实现某种具体功能

4、从一个对象可以调用的次数来看:

a )构造函数)创建对象时只调用一次;

b )一般函数:无次数限制

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。