为什么需要有构造函数?
构造函数是完成对象的初始化,这个当然可以定义一个成员方法予以实现。但是这个方法必须显式调用,否则就可能因未初始化出现错误。
我们希望这样的方法在对象实例化时能够被系统自动调用,那么它的名字一定是独一无二的,什么样的名字才是独一无二的呢?——以类名作为方法名。这就是构造函数。
构造函数不需要程序员去定义返回值,他是系统自动决定的,void也不行,并且参数可有可无
注意:如果类中没有带有参数的构造器,就可以使用一个隐藏的默认构造器来创建对象,如果一旦有带有参数的构造器。默认的构造器就会被覆盖,我们可以显式的定义出来默认构造器就可以使用了。
通过this(实参列表)可以调用本类中的构造器,必须注意,this必须是在方法中的第一行
构造器的语法:
Public 类名(数据类型 参数名,.......){
}
函数重载
多个函数使用同一个函数名,系统根据参数自动调用相应的函数。
函数重载解决了标识符统一的问题。
拷贝构造函数
用一个已经存在的本类的对象去复制新的对象
垃圾回收:所谓的“垃圾”是指之前系统分配的内存单元,但是现在没用了,
再具体的讲,就是没有引用指向它。对于“垃圾”来讲,程序员不需要自己去回收,而是系统提供的垃圾回收机制自动回收,当程序员觉得有必要时,也可以强制让系统回收。