new 对象时内存变化:
Student s = new Student();
1. 加载Student类文件到栈内存,开辟空间。
2. 在栈内存为s开辟空间
3. 在堆内存为Student对象开辟空间
4. 给Student的成员变量分配默认值
5. 如果成员变量有给定值则用给定值覆盖默认值
6. 通过构造方法给成员变量赋值
7. 把Student对象在堆内存的地址赋给s变量
new 对象时内存变化:
Student s = new Student();
1. 加载Student类文件到栈内存,开辟空间。
2. 在栈内存为s开辟空间
3. 在堆内存为Student对象开辟空间
4. 给Student的成员变量分配默认值
5. 如果成员变量有给定值则用给定值覆盖默认值
6. 通过构造方法给成员变量赋值
7. 把Student对象在堆内存的地址赋给s变量