用Java开发已经四年,中途学了python,Scala,接触这些开发语言后,总感觉Java就像老奶奶裹脚——又臭又长.然,Java虐我千百遍,我待Java如初恋.聊起Java,不得不谈Java的内存结构,请注意,要区别Java内存模型(JMM,关于happens-before.读写屏障啥的). 结构图 java内存结构包括5大部分,先来一张图围观一下: 其中堆存放的有对象实例.数组:局部变量表存储各种基本数据类型,对象引用(区别对象实例,这个是对象在堆中的地址):方法区存储已被虚拟机加载的类信…