JVM
文章平均质量分 66
LeoMes
这个作者很懒,什么都没留下…
展开
-
JVM阅读笔记之类加载机制
类的生命周期:加载,验证,准备,解析,初始化,使用,卸载必须对类进行初始化的五种条件(有且仅有):1、遇到new、getstatic、putstatic、invokestatic这条字节码指令 2、使用java.lang.reflect包的方法对类进行反射调用的时候,如果类没有进行过初始化,则需要先触发其初始化 3、当初始化一个类的时候,如果发现其父类还没有进行初始化,则需要先触发...原创 2018-03-07 00:53:57 · 224 阅读 · 0 评论 -
JVM阅读笔记之Java内存区域与对象的创建
一、运行时数据区域1、程序计数器(每条线程都需要有一个独立的程序计数器,字节码行号指示器) 2、Java虚拟机栈(线程私有,生命周期与线程相同,每个方法执行时都会创建一个栈帧用于存储局部变量表、操作数栈、动态链接等) 3、本地方法栈(与Java虚拟机相似,只是他存放Native方法执行时数据) 4、Java堆(所有线程共享,存放内存实例,分为新生代和老生代) 5、方法区(线程共享,用于...原创 2018-03-05 23:10:01 · 263 阅读 · 0 评论 -
JVM阅读笔记之垃圾收集机制
一、判断对象是否存在引用:1、引用计数法算法:每当一个地方引用该对象,计数器加1,引用失效时,计数器减1,计数器为0即不可能再被引用(缺点:若存在两个对象互相引用且没有地方引用到他们时,将不会被回收,所以几乎不使用这种方法) 2、可达性分析算法:通过一系列GC Roots对象作为起始点,从这些节点开始向下搜索,搜索走过的路径称为引用链,当一个对象和引用链没有相连时,就是可回收的 (GC R...原创 2018-03-06 16:22:05 · 214 阅读 · 0 评论