![](https://img-blog.csdnimg.cn/20201014180756913.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Java虚拟机
文章平均质量分 70
Zhang_hongxin
这个作者很懒,什么都没留下…
展开
-
JVM内存区域详解
JVM内存区域简介:JVM虚拟机会在执行Java程序的过程中会把它所管理的内存划分为若干的不同的数据区域。这些区域都有各自的用途,以及创建及销毁的时间,有的区域随着虚拟机的启动而存在,有的区域则依赖用户线程的启动和结束而建立和销毁。Java虚拟机运行时数据区如下图:一:程序计数器(Program Counter Register) 程序计数器是一块较小的内存空间,它可以看作是当前线程...原创 2018-07-09 09:41:23 · 241 阅读 · 0 评论 -
JVM垃圾收集算法与垃圾收集器
说到GC(Garbage Collection) ,我想Java程序员应该都有所了解,但可能有一大部分初学者仍有些模糊,这篇文章主要从关于GC的三个问题说起: 那些内存需要回收? 什么时候回收? 如何回收?内存回收的区域 关于Jav...原创 2018-07-13 16:11:27 · 208 阅读 · 0 评论 -
JVM内存分配与回收策略
JVM内存的分配与回收策略主要有一下几种: 对象优先在Eden分配: 大多数情况下,对象在新生代Eden区分配,当Eden区域没有足够的空间分配时,虚拟机将发起一次minorGC。 大对象直接进入老年代: 所谓的大对象是指,需要大量连续内存的对象,最典型的就是很长的字符串及数组。在平时应该尽量避免使用大量的“短命大对象”。 长期存活的对象将进入老年代:...原创 2018-07-13 16:44:05 · 214 阅读 · 0 评论 -
JVM类加载器与双亲委派模型详解
类加载器,主要负责将字节码文件(.class文件)加载到内存中。 从Java虚拟机的角度来讲,类加载器主要分为两种,一种是启动类加载器(Bootstrap ClassLoader),这个类加载器由c++实现,它是Java虚拟机的一部分;另一种是所有其他类加载器,它们由Java语言实现,独立于JVM虚拟机外部,并且全部继承自抽象类Java.lang.ClassLoader。 当...原创 2018-07-14 21:34:33 · 5930 阅读 · 0 评论 -
JVM类加载详解
我们都知道我们编写的Java文件要想运行,需要先进行javac编译生成字节码文件(.class),那么这个字节码文件是怎么加载到jvm内存中的呢,这就是今天要讲解的类加载过程。 类从被加载到虚拟机内存中开始,到卸载出内存为止,它的生命周期包括:加载(Loading)、验证(Verification)、准备(Preparation)、解析(Resolution)、初始化(Initial...原创 2018-07-14 22:34:34 · 170 阅读 · 0 评论