构造函数完成对象的初始化
1、子类构造函数第一行是默认super()调用父类无参构造函数。
2、当程序执行到new操作符时, 首先去看new操作符后面的类型,因为知道了类型,才能知道要分配多大的内存空间。
3、分配完内存之后,再调用构造函数,填充对象的各个域,这一步叫做对象的初始化。
其他方法完成初始化
调用Java.io.ObjectInputStream的readObject()方法和调用对象的clone()方法中,对象的初始化并不是通过构造函数完成的,而是读取别的内存区域中的对象的各个域来完成。