JVM
文章平均质量分 82
小白猿同学
在校大学生
展开
-
一道有关Integer和int的面试题
一道有关Integer和int的面试题原创 2021-10-31 00:47:59 · 310 阅读 · 2 评论 -
双亲委派模型
双亲委派模型 在介绍双亲委派模型前,我们需要引入类加载器的概念 绝大部分Java程序都会使用到以下3种系统提供的类加载器: 启动类加载器(Bootstrap ClassLoader) :JDK中的常用类大都由启动类加载器加载,如java.lang.String、java.util.List等。需要特别说明的是,启动类Main class也由启动类加载器加载。 扩展类加载器(Extension ClassLoader):位于rt.jar中,其被用于JavaFX的开发之中。 应用程序类加载器(Applica原创 2021-09-30 19:01:56 · 79 阅读 · 0 评论 -
JVM内存区域划分
JVM 文章目录JVM1. 内存区域划分1.1 程序计数器1.2 虚拟机栈1.3 本地方法栈1.4 堆1.5 方法区运行时常量池补充:JDK中常量池内存位置演化2. 局部变量、成员变量、静态变量存储位置3.递归的执行过程4. static方法和普通方法区别 1. 内存区域划分 Java虚拟机在执行Java程序的过程中会把它所管理的内存划分为若干个不同的数据区域。这些区域有各自的用途,以及创建和销毁的时间,有的区域随着虚拟机进程的启动而一直存在,有些区域则是依赖用户线程的启动和结束而建立和销毁。根据《Ja原创 2021-09-28 12:21:12 · 986 阅读 · 1 评论 -
双亲委派模型
双亲委派模型 在介绍双亲委派模型前,我们需要引入类加载器的概念 绝大部分Java程序都会使用到以下3种系统提供的类加载器: 启动类加载器(Bootstrap ClassLoader) :JDK中的常用类大都由启动类加载器加载,如java.lang.String、java.util.List等。需要特别说明的是,启动类Main class也由启动类加载器加载。 扩展类加载器(Extension ClassLoader):位于rt.jar中,其被用于JavaFX的开发之中。 应用程序类加载器(Applica原创 2021-09-25 15:41:43 · 115 阅读 · 0 评论 -
JVM内存区域划分
JVM 文章目录JVM1. 内存区域划分1.1 程序计数器1.2 虚拟机栈1.3 本地方法栈1.4 堆1.5 方法区运行时常量池2. 局部变量、成员变量、静态变量存储位置3.递归的执行过程4. static方法和普通方法区别 1. 内存区域划分 Java虚拟机在执行Java程序的过程中会把它所管理的内存划分为若干个不同的数据区域。这些区域有各自的用途,以及创建和销毁的时间,有的区域随着虚拟机进程的启动而一直存在,有些区域则是依赖用户线程的启动和结束而建立和销毁。根据《Java虚拟机规范》的规定,Java原创 2021-09-21 18:28:44 · 99 阅读 · 0 评论 -
JAVA 垃圾回收机制(Garbage Collection,GC)
JAVA 垃圾回收机制(Garbage Collection,GC) 1.垃圾回收需要干什么? 哪些内存需要回收? 什么时候回收? 如何回收? 2. 那些内存需要回收? 2.1 分析 上一篇提到,程序计数器、虚拟机栈、本地方法栈3个区域随线程而生,随线程而灭,栈中的栈帧随着方法的进入和退出而有条不紊地执行着出栈和入栈操作。每一个栈帧中分配多少内存基本上是在类结构确定下来时就已知的),因此这几个区域的内存分配和回收都具备确定性,在这几个区域内就不需要过多考虑如何回收的问题,当方法结束或者线程结束时,内原创 2021-09-21 18:27:38 · 445 阅读 · 0 评论