对象的创建
··············new 类名()——》加载,连接,初始化类——》给对象分配内存(对象存储在堆中)——》把分配的内存初始化为0值——》调用对象的构造方法
·············a.给对象分配内存——》b.线程安全性问题——》c.初始化对象——》d.执行构造方法、
a.给对象分配内存
两种方法:
1.指针碰撞(java堆规整)
2.空闲列表(java堆不规整)
方法决定:java堆是否规整
java堆是否规整 :有垃圾回收策略决定
b.线程安全性问题
1.线程同步
2.本地线程分配缓冲
c.初始化对象
将分配的内存初始化0值
d. 执行构造方法和代码块