在jvm的内存里,对象首先在栈区创建,地址为null当执行到对象属性时,在堆区创建然后赋给地址,然后把对象栈区为空的地址替换为堆区存放属性的地址,然后属性常量放在常量池,常量池在方法区,堆区里属性和常量的关系就上刚刚说过的对象和属性的关系差不多,类的信息只加载一次,包括属性的信息,方法的信息。
当程序执行到方法时就会开辟一个独立的栈区空间,当方法执行完毕后,或者碰到return,就会返回,返回到调用方法的地方。然后继续执行方法后的代码。
以上都是我瞎勾巴写的,我估计你也看不懂,毕竟人在精神失常的情况下会写出一些莫名其妙的东西。
对象先在栈中创建,然后在堆中分配属性,栈区的引用指向堆中的对象。常量池存储在方法区,包含属性和方法信息。方法执行时开辟独立栈空间,结束后返回。

被折叠的 条评论
为什么被折叠?



