
JVM随笔
文章平均质量分 57
正版小飘
笨鸟先飞。
展开
-
堆和栈的区别,为什么堆更慢?
栈与堆都是Java用来在Ram中存放数据的地方。与C++不同,Java自动管理栈和堆,程序员不能直接地设置栈或堆。Java的堆是一个运行时数据区,类的(对象从中分配空间。这些对象通过new、newarray、anewarray和multianewarray等指令建立,它们不需要程序代码来显式的释放。堆是由垃圾回收来负责的,堆的优势是可以动态地分配内存大小,生存期也不必事先告诉编译器,因为它转载 2011-06-28 18:21:00 · 1210 阅读 · 0 评论 -
实现一个简单的自定义类加载器
java虚拟机中,有一个类加载子系统,它包括了四种类加载器1、根装载器(启动类装载器)2、扩展类装载器3、系统类装载器4、用户自定义类加载器根加载器负责加载API里面的类,例如java.lang.object扩展类装载器复制加载jre中ext包中的类,如C:\Program Fi原创 2011-07-14 23:25:23 · 5217 阅读 · 5 评论 -
《深入理解java虚拟机》自动装箱拆箱实例
先上机实验一次,例子在《深入理解java虚拟机》P274面代码为:public class Test { public static void main(String[] args) { Integer a = 1; Integer b = 2; Integer原创 2011-07-27 15:13:43 · 2131 阅读 · 0 评论 -
《深入理解java虚拟机》java的内存区域
一个java程序运行时,数据都是存放在内存中的,要记住,是运行时,编译的时候(非运行时),数据是存放在class文件中的。运行时数据区分为以下几个:1、方法区 方法区是线程共享的,运行时,里面存放的是类加载时的信息,常量,静态变量,JIT编译后的代码数据。它包含原创 2011-07-30 10:26:03 · 1005 阅读 · 1 评论