
jvm
森林屿麓
这个作者很懒,什么都没留下…
展开
-
《Java虚拟机原理图解》 1.1、class文件基本组织结构
[last updated: 2014/11/19 09:06] 作为Java程序猿,我们知道,我们写好的.java 源代码,最后会被Java编译器编译成后缀为.class的文件,该类型的文件是由字节组成的文件,又叫字节码文件。那么,class字节码文件里面到底是有什么呢?它又是怎样组织的呢?让我们先来大概了解一下他的组成结构吧。NO1. 魔转载 2017-03-18 17:24:21 · 473 阅读 · 0 评论 -
JVM类加载机制详解 JVM类加载过程
首先,在代码编译后,就会生成JVM(Java虚拟机)能够识别的二进制字节流文件(*.class)。而JVM把Class文件中的类描述数据从文件加载到内存,并对数据进行校验、转换解析、初始化,使这些数据最终成为可以被JVM直接使用的Java类型,这个说来简单但实际复杂的过程叫做JVM的类加载机制。Class文件中的“类”从加载到JVM内存中,到卸载出内存过程有七个生命周期阶段。类加载机制包括了前五个...转载 2018-04-15 10:26:53 · 458 阅读 · 0 评论 -
JVM类加载机制详解 类加载器与双亲委派模型
1、通过一个类的全限定名(包名与类名)来获取定义此类的二进制字节流(Class文件)。而获取的方式,可以通过jar包、war包、网络中获取、JSP文件生成等方式。2、将这个字节流所代表的静态存储结构转化为方法区的运行时数据结构。这里只是转化了数据结构,并未合并数据。(方法区就是用来存放已被加载的类信息,常量,静态变量,编译后的代码的运行时内存区域)3、在内存中生成一个代表这个类的java.lang...转载 2018-04-15 10:28:51 · 196 阅读 · 0 评论 -
java程序执行过程 +JVM内存管理 + GC垃圾回收机制
java程序执行过程 +JVM内存管理 + GC垃圾回收机制1、Java程序执行过程一个java程序的编译和执行过程如下:.java ——编译——> .class 类加载器负责加载各个字节码文件(.class) 加载完.class后,由执行引擎执行,在执行过程中,需要运行时数据区提供数据补充:手动编译.javaMain.javapublic class Mai...转载 2018-04-15 19:54:29 · 229 阅读 · 0 评论 -
GC算法 垃圾收集器
概述垃圾收集 Garbage Collection 通常被称为“GC”,它诞生于1960年 MIT 的 Lisp 语言,经过半个多世纪,目前已经十分成熟了。jvm 中,程序计数器、虚拟机栈、本地方法栈都是随线程而生随线程而灭,栈帧随着方法的进入和退出做入栈和出栈操作,实现了自动的内存清理,因此,我们的内存垃圾回收主要集中于 java 堆和方法区中,在程序运行期间,这部分内存的分配和使用都是...转载 2018-11-30 09:18:30 · 237 阅读 · 0 评论 -
volatile详解
volatile这个关键字可能很多朋友都听说过,或许也都用过。在Java 5之前,它是一个备受争议的关键字,因为在程序中使用它往往会导致出人意料的结果。在Java 5之后,volatile关键字才得以重获生机。 volatile关键字虽然从字面上理解起来比较简单,但是要用好不是一件容易的事情。由于volatile关键字是与Java的内存模型有关的,因此在讲述volatile关键之前,我们先...转载 2018-12-27 17:00:24 · 27607 阅读 · 27 评论