随笔分类 - JVM
摘要:对象的创建 类加载 在new对象时,首先会检查判断类是否被加载,如果未被加载则会先对类进行加载。 内存分配 类被加载完毕时就可以知道该类的对象占用多大的内存空间,那么下一步则是该划分内存了,Java划分内存分为两种,一种是指针碰撞,该方法是利用空闲指针来分配内存的,另一种是空闲列表法,该方法需要维护
阅读全文
摘要:Java跨平台特性 Java跨平台特性主要是JVM的作用,只要在各种操作系统中适配了JVM,再将编译后的Java程序适配JVM即可,JVM屏蔽了上层具体的机器代码与指令,又为下层提供服务,使得class不需要适配操作系统,只需要适配JVM即可,如下图所示。 JVM的内存结构 栈 栈的基本单位为栈帧,
阅读全文
摘要:# Java代码执行过程 执行Java代码的过程: Java肯定是没办法对系统资源进行初始化的,所以首先肯定是由c++来初始化资源,例如创建Java虚拟机等,执行Java.exe调用JVM.dll创建Java虚拟机 -> 调用由c++编写的引导类加载器,该类加载器会加载核心类库 -> 调用sun.m
阅读全文