
Java虚拟机
无嘴小呆子
用代码书写这个世界
展开
-
Java内存划分和分配
综述在这边文章中我们将了解一下Java的内存区域是怎么划分的以及每个区域的功能。在了解Java每个内存区域的功能之后,进一步分析Java对象如何的创建和对象的内存分配,以及如何访问对象中的内存。最后学习一下Java堆内存的分代划分和内存分配。Java内存区域划分首先通过一张图来看一下Java虚拟机是如何划分内存空间的。程序计数器:是一块较小内存,可以看作是当前线程所执行的字节码的行号指示...原创 2018-10-18 15:03:41 · 11816 阅读 · 3 评论 -
Java垃圾回收机制
综述在上篇文章中我们分析了Java内存空间的划分和分配,在这篇文章中我们来了解一下Java对于不再使用的对象是如何回收的。回收的内存区域在Java内存运行时,其中程序计数器、虚拟机栈、本地方法栈3个区域随线程而生,随线程而灭。栈中的栈帧随着方法的进入和退出有条不紊的执行着出栈和入栈的操作。每一个栈中分配多少内存基本上是在类结构确定下来时就知道的。因此这几个区域的内存分配和回收都具有确定性,也...原创 2018-10-19 17:09:41 · 443 阅读 · 1 评论 -
Java类加载机制
综述在前面两篇文章主要分析了Java的内存以及Java的垃圾回收机制。在这篇文章中分析一下类是如何加载的。类加载时机类从被加载到虚拟机内存开始,到卸载出内存为止。它的整个生命周期包括:加载(Loading)、验证(Verification)、准备(Preparation)、解析(Resolution)、初始化(Initialization)、使用(Using)和卸载(Unloading)7个...原创 2018-10-24 16:26:13 · 494 阅读 · 0 评论