《深入理解Java虚拟机》
文章平均质量分 73
lskyne
这个作者很懒,什么都没留下…
展开
-
《深入理解JAVA虚拟机》--第二章 Java内存区域
Java虚拟机在执行Java程序的过程中会把它所管理的呢存划分为若干个不同的数据区域。如图所示1,程序计数器一块较小的内存空间,作用:当前线程所执行的字节码的行号指示器。线程私有的内存。Java的多线程是通过线程轮流切换并分配处理器执行时间的方式来实现的,因此,每个线程为了能在切换后能恢复到正确的位置,每个线程需要独立的程序计数器。2,Java虚拟机栈也是线程私有原创 2013-05-29 15:57:51 · 1035 阅读 · 0 评论 -
《深入理解JAVA虚拟机》--第二章 Java内存溢出异常
1,Java堆溢出只要不断地创建对象,并且保证GC Roots到对象之间有可达路径来避免垃圾回收机制清除这些对象,就会在对象数量到达最大堆的容量限制后产生内存溢出异常解决public class HeapOOM { static class OOMObject { } public static void main(String[] args) { List li原创 2013-05-29 17:11:14 · 855 阅读 · 1 评论 -
《深入理解JAVA虚拟机》--第六章 类文件结构
与平台无关性实现在操作系统的应用层,各种不同平台的虚拟机与所有平台都统一使用的程序存储格式--字节码是构成平台无关性的基石实现语言无关性的基础是虚拟机和字节码存储格式,使用Java编译器可以把Java代码编译为存储字节码的Class文件,使用其他语言的编译器也可以相应编译成Class文件,其他语言也可以在JAVA虚拟机中运行,虚拟机不关心Class的来源,只有符合Class文件应有的结构就可以原创 2013-06-05 10:16:07 · 1166 阅读 · 0 评论