随笔分类 -  JavaVirtualMachine

摘要:解释 在java中也有引用的概念,其实就可以认为是变量。标题中的引用级别是指变量与对象之前的引用级别。java中分为4种,按引用强弱关系排序分别是:强引用、软引用、弱引用、虚引用。 强引用(Strong references) 特点:当JVM内存满了之后也不会断开引用关系,即使是发成OOM 我们平时 阅读全文
posted @ 2020-07-19 19:45 林一gg 阅读(176) 评论(0) 推荐(0) 编辑
摘要:内存布局 JVM内存大概分为几块区域:堆、栈、程序计数器、MetaSpace元空间、直接内存区,见下图 线程级内存区域:栈、程序计数器,堆与操作系统一样多个线程共享。 本地方法栈 本地方法栈是和虚拟机栈非常相似的一个区域,它服务的对象是 native 方法。你甚至可以认为虚拟机栈和本地方法栈是同一个 阅读全文
posted @ 2020-07-16 22:01 林一gg 阅读(100) 评论(0) 推荐(0) 编辑
摘要:类的加载过程 加载过程可以分为3大阶段:加载 - 链接(验证 -准备 - 解析) - 初始化,如下图: 加载 这里的加载可以从字面意思理解,主要作用是将外部的 .class 文件转换为二进制数据并加载到JVM的方法区内 , 这里的外部可以指:jar、war、网络中等等 验证 校验 class 文件的 阅读全文
posted @ 2020-07-16 22:00 林一gg 阅读(130) 评论(0) 推荐(0) 编辑
摘要:简单解释 内存分配的一种机制,Young区空间容纳不了对象时会把对象放到Old区,所以称之为Old区给Young区的空间做担保。继续联想。。。。java堆内存会使用谁来做空间担保呢? 官方解释 在发生Minor GC之前,虚拟机必须先检查老年代最大可用的连续空间是否大于新生代所有对象总 空间,如果这 阅读全文
posted @ 2020-07-16 21:58 林一gg 阅读(309) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示