
JVM
文章平均质量分 77
AI小艾
这个人很懒,什么都写了。
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
垃圾回收器分类 -Java
常见的垃圾回收器都有哪些?连线的两个垃圾回收器说明可以相互搭配使用。原创 2021-03-28 22:47:28 · 275 阅读 · 3 评论 -
常用垃圾回收算法
文章目录一、System.gc()用法二、区分开finalize()、finally、final的区别三、垃圾回收策略1. 引用计数算法2.可达性分析算法3.垃圾回收主要区域四、垃圾回收算法五、垃圾回收的过程六、内存分配与回收策略一、System.gc()用法调用这个方法,只是建议JVM进行FGC(Full GC),只是建议JVM来进行回收垃圾,但很多情况下并不会触发FGC,只是增加FGC的频率。二、区分开finalize()、finally、final的区别1.finalize()方法:当JVM确原创 2021-03-28 21:16:21 · 883 阅读 · 1 评论 -
强引用、软引用、弱引用、虚引用的区别 -Java
Java中为何要分别定义强引用、软引用、弱引用、虚引用四种引用类型?我们对于对象的定义不能只局限于“引用”和“未被引用”两种状态,因为我们还存在几种引用类型能描述这样一类对象:当内存空间还足够时,仍保留在内存之中,如果内存空间在进行垃圾收集后仍然非常紧张,那就可以抛弃这些对象(这类对象应用在很多系统的缓存功能上)。在JDK 1.2版之后,Java对引用的概念进行了扩充,将引用分为强引用(Strongly Re-ference)、软引用(Soft Reference)、弱引用(WeakReference)原创 2021-03-27 11:18:09 · 566 阅读 · 6 评论 -
JVM内部结构
Java程序是怎样被运行起来的?1.类存放在方法区;2.类创建的对象在堆中;3.堆中对象调用方法时,会使用到虚拟机栈、本地方法栈、程序计数器;4.方法执行时每行代码由解释器逐行执行;5.热点代码由JIT编译器即时编译;6.垃圾回收机制回收堆中资源;7.和操作系统打交道需要调用本地方法接口。程序计数器:(线程私有)JVM中的一小块内存一行JVM指令----->解释器----->机器码----->CPU在执行JVM指令的过程中,由程序计数器来标记当前线程执行的字节码的行号原创 2021-03-26 09:36:28 · 267 阅读 · 2 评论 -
类加载器 -双亲委派模式
我们首先了解了类的加载过程,主要有5个阶段:加载—验证—准备—解析—初始化。那么什么是类加载器呢?类加载器:首先我们写好的 .java文件经过编译后会形成 .class字节码文件,然后类加载器将.class文件加载为class模板,并可以通过new关键字创建实例对象,实例对象可以通过getClass方法获取class模板,class模板可以通过getClassLoader方法获取类加载器。类加载器:主要有四种:启动类加载器、扩展类加载、应用程序类加载器、自定义类加载器这四类类加载的关系为:原创 2021-03-25 20:56:48 · 284 阅读 · 0 评论 -
类加载过程描述 -java
在java中,一个变量存在创建、使用到销毁的过程,关于类的创建,使用,销毁过程,肯定也存在类似的生命周期。java中类的生命周期一般包括这么几部分:类加载阶段只是前5个阶段: 加载,验证,准备,解析,初始化,但是解析这个阶段的位置不是固定的,因为java中还存在着动态绑定。什么叫做java的类加载机制?Java虚拟机把描述类的数据从Class文件加载到内存,并对数据进行校验、转换、解析和初始化,最终形成可以被虚拟机直接使用的Java类 型,这个过程被称作虚拟机的类加载机制。1.加载阶段:1)通原创 2021-03-24 17:34:56 · 356 阅读 · 3 评论