摘要: 上图表明:jvm虚拟机位于操作系统的堆中,并且,程序员写好的类加载到虚拟机执行的过程是:当一个classLoder启动的时候,classLoader的生存地点在jvm中的堆,然后它会去主机硬盘上将A.class装载到jvm的方法区,方法区中的这个字节文件会被虚拟机拿来new A字节码(),然后在堆内 阅读全文
posted @ 2019-10-12 16:52 一叶飘零如秋 阅读(200) 评论(0) 推荐(0) 编辑
摘要: 1.对象的创建过程: 1.new 类名 2.根据new的参数在常量池中定位一个类的符号的引用。 3.如果没找到这个符号的引用,说明类还没有被加载。则进行类的加载,解析和初始化 4.虚拟机为对象分配内存(位于堆中)。 5.将分配的内存初始化为零(不包括对象头),即抽象属性初始化为null,基本数据类型 阅读全文
posted @ 2019-10-12 14:51 一叶飘零如秋 阅读(126) 评论(0) 推荐(0) 编辑
摘要: 方法区 方法区,Method Area, 对于习惯在HotSpot虚拟机上开发和部署程序的开发者来说,很多人愿意把方法区称为“永久代”(Permanent Generation),本质上两者并不等价,仅仅是因为HotSpot虚拟机的设计团队选择把GC分代收集扩展至方法区,或者说使用永久代来实现方法区 阅读全文
posted @ 2019-10-12 14:15 一叶飘零如秋 阅读(2873) 评论(0) 推荐(0) 编辑