高楼大厦,都是平地起的。
整个java体系,其实就一本秘籍,那就是java基础!
就我本人这么多年JAVA研发方面的工作经验来看,基础如果打的扎实,在实际开发工作中会带来极大的助益。
最近有个机会整理JAVA基础相关知识,整理到JVM内存模型这部分的时候,画了两张图,记载在此,供感兴趣的新手参考。
第一张:
JDK1.8 - JVM内存模型说明
- 程序计数器:它的生命周期与线程相同,线程私有。较小的内存区域,用以完成分支、循环、跳转、异常处理、线程恢复等基础功能。不会发生内存溢出(OutOfMemory=OOM)错误。
- 虚拟机栈:它的生命周期与线程相同,线程私有。虚拟机栈中存储了方法执行时相关信息,每个方法在调用时都会在虚拟机栈中创建一个方法帧,方法帧中包含了局部变量,参数,运行中间结果等信息。帧数超过限制(-Xss),就会出现StackOverFlow(