程序执行内存变化图

public class Person {
String name ;
int age ;
public void show(){
System. out .println( "姓名:" + name + ",年龄:" + age );
}
}
public class TestPerson {
public static void main(String[ ] args ) {
// 创建p1对象
Person p1 = new Person();
p1 . age = 24;
p1 . name = "张三" ;
p1 .show();
// 创建p2对象
Person p2 = new Person();
p2 . age = 35;
p2 . name = "李四" ;
p2 .show();
}
}

程序执行内存变化图_第1张图片 通过程序运行内存的模块模拟能够更深入的了解代码运行的底层原理。

程序以main()为起点栈帧,通过调用构造方法在堆中创建新的对象,以方法区为模板。

每次调用方法都需要在栈中创建新的栈帧,方法运行完后此栈帧结束,整个程序运行完毕main方法也会关闭。

 

你可能感兴趣的