logo头像

Always believe youself.

jvm

JVM-7内存模型

内存模型【java 内存模型】 是 Java Memory Mdel (JMM)的意思。 JMM 定义了一套在多线程读写共享数据时(成员变量,数组)时,对数据的可见性,有序性和原子性的规则和保障。 原子性多线程,会因为指令交错而产生错...

JVM-6

类加载器阶段 加载 链接 初始化 加载 先找到 instanceKlass 再找到 Person.class 连接 验证 :验证类是否符合 JVM 规范,安全性检查。 准备 :为 static 变量分配空间,设置默认值。 解析...

JVM-5

编译器处理语法糖: 就是指java 编译器 把 *.java 源码编译成 *.class 字节码的过程中,自动生成和转换的一些代码,主要是为了减轻程序员的负担,算时java 编译器给我们的额外福利。 默认构造器编译器帮我们加一个默认的...

JVM-4

类加载与字节码技术 类文件结构 字节码指令:每一个指令字节码都会对应一个操作 编译期处理 类加载阶段 类加载器 运行期优化 整个流程:java source code -> 编译器(编译成)-> 字节码 -> 经...

JVM-3

直接内存(Direct Memory)就是操作系统的内存,不是jvm 的内存管理。 常见于NIO 操作时,用于数据缓冲区 bytebuffer 分配回收成本较高,但是读写性能高 不受 JVM 内存回收管理 为什么在读写大文件时 性...

JVM-2

方法区 内存定义 所有虚拟机线程的共享区域 类结构 变量, 方法数据, 特殊方法 (类相关的信息) 运行时常量池 在虚拟机启动时被创建。逻辑上是 堆的 一部分。永久代(1.6) 是 jdk 1.8 之前的实现方法,之后是 移除到...

JVM-1

什么是 JVMjava virtual Machine - java 程序的运行环境(java 二进制字节码的运行环境) 好处; 一次编写,到处运行 自动化内存管理,垃圾回收功能 数组下标越界检查 多态:使用虚方法调用的机制实现了多...