1.申请空间 m=0
2.没啥用 一个默认填充值
3.调用构造方法 m=8
4.对象引用和内容关联
1.TLAB: 1.同步效率过低 2.解决指针碰撞
每个线程申请一份空间(优先使用之后放入公共空间)
2.栈上分配:优先栈上分配
3.逃逸分析:全局变量赋值逃逸,方法返回值逃逸,实例引用逃逸(传递给另外一一个方法),线程逃逸(其他线程使用该对象)
4.标量替换:如果逃逸分析发现一个对象不会被外部访问,并且该对象可以被拆散,那么经过优化之后,并不直接生成该对象,而是在栈上创建若干个成员变量
两部分 一块jvm 一块操作系统