码迷,mamicode.com
首页 > 其他好文 > 详细

jvm简单笔记(3)

时间:2016-04-01 01:04:14      阅读:162      评论:0      收藏:0      [点我收藏+]

标签:

1、jvm,java virtual Machine其实就是虚拟在计算机上的一个计算机,但是他和vmware又不一样,后者是能看到的,而jvm 是看不到的,他是在内存中。

2、jvm有个部分叫做class loader,把类加载到虚拟机中执行就靠他。其实对class文件的格式jvm是有判断的。但是判断的工作并不是这个class loader,而是jvm的另一部分解释器 execution engine。

3、jvm有个部分叫做栈,遵循先进后出的原则,保存的是基本数据类型,他的工作模式可以这里来理解,比如最开始调用方法A,A就被压缩在栈的底部,但是A方法又调用了B方法,再执行到B方法的时候B方法又被压缩进了栈内在栈顶,所以B是后进但是会等B方法执行完成后跳出栈,先出来,出来后继续轮到A方法执行完,之后A执行完就线程结束栈也释放。

4、jvm有一个部分叫堆,堆内存分为三个部分,第一个是永久存储区其实就是上次说的持久代,新生区就是上次说的年轻代,养老区其实就是上次说的年老区。新生区又分伊甸区Eden Space和幸存者区 survivor Space,对象都是在伊甸区这里创建的,这个区满了就会放到幸存者0区,0区满了就会放到幸存者1区,1区还满了的话就会被放到年老区就是养老区,垃圾回收也是这样的流程。

5、持久区也叫永久存储区,他存放的东西就是像java class,还有类变量就是静态变量,不是静态变量的叫做实例变量。

jvm简单笔记(3)

标签:

原文地址:http://www.cnblogs.com/legenda-lee/p/5343296.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!