Java虚拟机
文章平均质量分 88
thesingularityisnear
拥抱变化
展开
-
Java对象创建与内存分布
本文主要讲述Java对象在虚拟机中创建,分配内存,初始化的过程,以及分配内存,引用对象的几种常见方式。对象创建对象创建分为三部分,首先是类加载,接着是为对象分配内存,最后是初始化。原创 2016-07-28 00:20:56 · 1448 阅读 · 0 评论 -
Class类文件结构分析
Class文件中存储着Java虚拟机指令集和符号表以及若干辅助信息。它使用的是一种平台无关的字节码储存格式,不同的虚拟机实现都可以载入执行这种平台无关的字节码。Java虚拟机不与任何语言绑定,只与Class文件这种特定二进制文件格式关联,原则上任何语言都可以编译成Class文件在Java虚拟机上运行。原创 2016-07-28 00:24:40 · 567 阅读 · 0 评论 -
GC算法与内存回收
Java内存回收虽说是自动完成,但当需要排查各种内存溢出问题以及提高系统并发量时,仍然需要对Java的垃圾回收技术进行必要调节与监控。本文主要介绍垃圾收集器的GC算法与内存回收策略。原创 2016-07-28 00:30:03 · 1587 阅读 · 0 评论 -
虚拟机类加载机制
在Java语言中,类型的加载、连接和初始化过程都是在程序运行期间完成。虚拟机在运行期间会把描述类的数据从Class文件中加载到内存,并对数据进行校验、转换解析和初始化,最终形成可以被虚拟机知己网使用的Java类型,这就是虚拟机的类加载机制。原创 2016-07-28 00:33:23 · 436 阅读 · 0 评论 -
Java内存区域与异常
Java虚拟机在运行时会把其管理的内存划分为若干不同的数据区域。《Java虚拟机规范》规定的数据区域通常包括程序计数器、Java虚拟机栈、本地方法栈、Java堆、方法区、运行时常量池以及直接内存。这些区域都会有各自不同的生存周期以及各自不同的用途,本文主要介绍这些内存区域以及各个内存区域可能抛出的异常。原创 2016-07-28 00:14:39 · 324 阅读 · 0 评论