啥是构造器?

2023-12-29 15:43:06

当我们new一个对象时就是在引用构造器

构造器又叫做构造函数

构造函数一般分为无参构造函数有参构造函数

假设我们创建一个pet类,这个类里面就会有一个看不见的自动生成的无参构造函数

?

如果pet类里没有这个隐形的无参构造,我们new一个对象时就会报错

另外,当我们创建了一个有参构造之后,这个隐形的无参构造就不灵了,我们需要手动写一个无参构造

?

区别有参构造与无参构造的方法就是看他们是否有参数

讲了无参构造,有参构造有什么用呢?

当我们对对象的属性进行赋值时,有参构造就能发挥它的作用了:

  • new Pet(“天玄地号”) --- 创建一个参数为天玄地号的对象

  • 天玄地号的这个值就通过有参构造传入pet对象(与pet.name = “天玄地号”;作用相同)

这里我们提一下对象在内存中的样子:

当我们创建一个对象时,计算机先将pet引用变量放入栈中,然后再堆中开辟一个空间,在里面创建一个基于pet类的对象,再将pet引用变量指向这个空间。(与c语言的指针相似)

文章来源:https://blog.csdn.net/m0_56292604/article/details/135290189
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。