JVM
Mr清奇
六味地黄丸。
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
Java类的加载过程
让我们从一道面试题说起,请问以下代码的执行结果是什么:public class Test{ static { A = 0; } static int A = 1; public static void main(String[] args){ System.out.println(Test.A); }}编译错误?0?1?正确答案是1。为什么A在定义之前赋值不报错呢?这就要从类的加载过程说起。一个类的生命周期分为以下几个阶段:加载Loading、验证Verification、原创 2020-07-11 23:10:39 · 145 阅读 · 0 评论 -
HotSpot虚拟机垃圾收集器-实践篇
以windows系统为例,JDK版本1.8.0_251。查看当前JAVA进程D:\Java\jdk1.8.0_251\bin>jps23776 Program5600 JpsD:\Java\jdk1.8.0_251\bin>查看java进程使用的垃圾收集器D:\Java\jdk1.8.0_251\bin>jmap -heap 23776Attaching to process ID 23776, please wait...Debugger attached原创 2020-06-21 23:34:21 · 307 阅读 · 0 评论 -
HotSpot虚拟机垃圾收集器-理论篇
java的对象实例存放在堆里,java的对象无需程序员管理,而是由垃圾收集器(Garbage Collection 简称GC)自动管理。一般来说,大部分对象都是朝生夕灭的,而熬过越多次垃圾收集过程的对象就越难以消亡。据此,一般垃圾收集器会根据回收对象的年龄(经历过垃圾收集过程的次数),将自身管理的堆分为新生代(Young Generation)和老年代(Old Generation)。每次回收优先回收新生代,以便快速回收大量的可用空间。基础垃圾收集算法有三种:标记-清除算法(Mark-Sweep)原创 2020-06-15 00:08:20 · 296 阅读 · 0 评论
分享