当你需要个对象时,java虚拟机在为你做什么?

简单说,new对象时,虚拟机在为你说媒

笑~

1、虚拟机遇到new指令,到常量池定位到这个类的符号引用。

2、检查符号引用代表的类是否被加载、解析、初始化过。

3、虚拟机为对象分配内存。

4、虚拟机将分配到的内存空间都初始化为零值。

5、虚拟机对对象进行必要的设置。

6、执行方法,成员变量进行初始化。

7、将对象的引用指向这个内存区域。

简化一下,简化成3个步骤:

a、JVM为对象分配一块内存M

b、在内存M上为对象进行初始化

c、将内存M的地址复制给singleton变量


版权声明:本文为sinat_23976137原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。