构造函数?构造函数是什么它与一般函数有什么区别
一、构造函数和类的区别
不一样,类中的构造函数是声明一个类的对象后,自动的调用的,但成员函数是用户使用时才会调用,通常的话一个类的成员变量的初始化都是通过构造函数来实现的,至于是不是非要和new运算符一起使用也不一定,你只要声明一个类的对象后,编译系统都会调用构造函数的,只是生存周期只是在此段程式的大括号类用完后自动释放,而用new生成的对象,也必需调用类的构造函数,系统为对像分配内存空间,用户自已使用完要delete的
二、构造函数的功能和定义
我们通常把构造函数当作类来说,然后通过new这个构造函数来创建实例,简单的想就可以这样,但是构造函数本身就是函数,在new的过程中执行了一遍。
在执行的过程中,只是改变了上下文环境,导致this所指的方向发生了改变,然后就像绑定属性和方法那样,把构造函数里面的this所附带的方法属性都给了那个新的对象。剩下的关于原型的那块,你要先把这块搞懂了再看不迟。
三、构造函数是什么它与一般函数有什么区别
构造函数是一种特殊的方法。主要用来在创建对象时初始化对象,即为对象成员变量赋初始值,总与new运算符一起使用在创建对象的语句中。特别的一个类可以有多个构造函数,可根据其参数个数的不同或参数类型的不同来区分它们即构造函数的重载。
构造函数与一般函数的区别:
1、构造函数是没有返回值类型的。
2、构造函数的函数名必须要与类名一致。
3、构造函数并不是由我们手动调用的,而是在创建对应的对象时,jvm就会主动调用到对应的构造函数。
4、如果一个类没有显式的写上一个构造方法时,那么java编译器会为该类添加一个无参的构造函数的。
5、如果一个类已经显式的写上一个构造方法时,那么java编译器则不会再为该类添加一个无参的构造方法。
6、构造函数是可以在一个类中以函数重载的形式存在多个的。