一、什么是构造函数?
构造函数是一个特殊的方法,它在类每次实例化创建对象的时侯自动调用,用于初始化对象。
构造函数的名字必须与类名完全相同,并且没有返回类型,甚至连void
也没有。
构造函数的目的是确保对象在创建时处于一个有效的、已知的状态。
二、构造函数存在的原因探讨:
1、假设我们要建一个Entity类,里面有位置信息,我们实例化后,打印出来,如下所示:
运行代码,打印出来一些随机值。
这是因为当我们实例化Entity类并且分配内存的时候,但实际上还没有对内存进行初始化,就是说内存空间还是原来的内容。
我们想做的可能就是初始化内存并把它设置为0,这样我们的位置默认就是0,而我们并不用显示的去指定一个值。
2、如果我们想手动打印X和Y,因为它们是公有的,所以我可以使用e.X直接把X打印出来。如下:
这里出现了错误,说使用未初始化的内存e和未初始化的局部变量(uninitialized local variable)e的报错信息。