黑马程序员技术交流社区
标题:
关于内存的笔记
[打印本页]
作者:
DaoDao2
时间:
2016-8-29 23:27
标题:
关于内存的笔记
内存图:
代码:
public static void main(String[] args) {
Car car = new Car();
car.color = "红色";
car.count = 5;
car.run();
}
内存中的执行顺序:
1、main函数进栈,然后从main函数的第一行代码开始执行。
2、在栈内创建Car类的引用car,等待接收堆中传过来的地址值。
3、看到new Car()会在堆内存开辟一块儿空间。
4、该类的成员变量进堆,系统给出默认值。
5、至此,对象创建完毕,把堆中对象的地址值赋值给栈中的引用car。
6、执行car.color = "红色"; 把对象的color属性值改为"红色"。
7、执行car.count = 5; 把对象的count属性值改为5。
8、执行car.run(); run()方法进栈,开始执行run()方法。
9、run()执行完毕后弹栈。
10、main()函数弹栈,程序结束。
//先这么记忆,不严谨。 类加载器,构造方法
作者:
细听风语为梧桐
时间:
2016-8-30 21:32
收到了,谢谢分享
作者:
小超超
时间:
2016-8-30 22:09
恩,非常适合初学者。
作者:
DaoDao2
时间:
2016-8-30 23:35
哈哈哈哈哈
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2