第2章 Java内存区域与内存溢出异常 2.1 概述 为什么要了解内存管理? 正是因为Java程序员把内存控制的权利交给了Java虚拟机,一旦出现内存泄漏和溢出方面的问题,如果不了解虚拟机是怎样使用内存的,那么排查错误将…
分类:java虚拟机
《深入理解JAVA虚拟机》--第六章 类文件结构
与平台无关性实现在操作系统的应用层,各种不同平台的虚拟机与所有平台都统一使用的程序存储格式–字节码是构成平台无关性的基石 实现语言无关性的基础是虚拟机和字节码存储格式,使用Java编译器可以把Java代码编译…
深入理解Java虚拟机——JVM、DVM(dalvik)和ART之间的区别
一、Dalvik介绍 Dalvik VM是Android平台的核心组成部分之一,它的名字来源于冰岛一个名为Dalvik的小渔村。Dalvik VM并不是一个Java虚拟机,它没有遵循Java虚拟机规范,不能直接执行Jav…
深入理解Java虚拟机 【垃圾收集器】
概述 Java虚拟机的内存模型分为五个部分:程序计数器、Java虚拟机栈、本地方法栈、堆、方法区。 这五个区域既然是存储空间,那么为了避免Java虚拟机在运行期间内存存满的情况,就必须有一个垃圾收集者的校色,不定期的回收…
Java虚拟机深入详解JVM之类加载器深度剖析、类的主动使用、被动使用
由于星期六没上班,很多朋友在问Jvm的原理 抽时间写了一个很简短的教程。 郑重声明:本文为原创文章,转载请注明出处否则追究其法律责任。 一 首先我们看一段代码:如下 p…
深入Java虚拟机之内存优化
前面一篇文章介绍了Java虚拟机的体系结构和内存模型,既然提到内存,就不得不说到内存泄露。众所周知,Java是从C++的基础上发展而来的,而C++程序的很大的一个问题就是内存泄露难以解决,尽管Java的JVM有一套自己的…
深入理解Java虚拟机学习总结(一) 自动内存管理机制
1、java技术体系:主要五类如下 java语言 各种硬件平台上的java虚拟机 cl…
6.《深入理解Java虚拟机》HotSpot 的算法实现
前面的blog在理论上介绍了对象存活判定算法和垃圾收集算法,然而在HotSpot虚拟机上实现这些算法时必须对算法的执行效率有足够严格的考量,才能保证虚拟机高效运行。 1.可达性分析算法中的枚举根节点 在对象存活算法的可达…
《深入Java虚拟机》学习笔记二:平台无关性
第二章 平台无关 1、Java体系结构对平台无关性的支持 对平台无关性的支持,是分布在整个Java体系结构中的,所有的组成部分,包括语言、class文件、AP…
《深入理解java虚拟机》:类的初始化
深入理解java虚拟机》:类的初始化 类从被加载到虚拟机内存中开始,到卸载出内存为止,它的整个生命周期包括:加载、验证、准备、解析、初始化、使用和卸载七个阶段。其中验证、准备、解析3个部分统称为连接。类加载的过程包括了加…
《深入理解Java虚拟机》读书笔记 类加载器双亲委派模型
从Java虚拟机的角度来讲,只存在两种不同的类加载器:一种是启动类加载器(Bootstrap ClassLoader),这个类加载器使用C++语言实现,是虚拟机自身的一部分;另一种就是所有其他的类加载器,这些类加载器都由…
深入Java虚拟机(2)——Java的平台无关性
一、平台无关性的好处 Java技术在网络环境下非常有用,其中一个关键理由是,用Java创建的可执行二进制程序,能够不加改变地运行于多个平台。 这样的平台无关性随之带来许多的好处。这将极大地减轻系统管理员的工作;此外Jav…