`
文章列表
程序计数器: 是一块较小的内存空间,它的作用可以看做是当前线程所执行的字节码的行号指示器。 Java 虚拟机栈: Java 方法执行的内存模型,即每个方法被执行的时候都会同时创建一个栈帧用于存储局部变量表、操作数栈、动态链接、方法出口等信息。每一个方法被调用直至执行完成的过程,就对应着一个栈帧在虚拟机栈中从入栈到出栈的过程。注: java 虚拟机栈也是线程私有的,它与线程的生命周期相同。 本地方法栈: 与 java 虚拟机栈的作用是非常相似的,其区别是虚拟机栈执行 java 方法服务,而本地方法栈是为虚拟机使用到的 Native 方法 ...
1. Java 语言编译过程中比较有代表性的编译器: 1)  前端编译器:把 *.java 文件转变成 *.class 文件的过程,如 Sun 的 Javac 、 Eclipse JDT 中得增量式编译器。 2)  JIT 编译器:虚拟机的后端运行期编译 ...
1. 栈帧( Stack  Frame ):是用于支持虚拟机进行方法调用和方法执行的数据结构,它是虚拟机运行时数据区中的虚拟机栈的栈元素。栈帧存储了方法的局部变量表、操作数栈、动态链接和方法返回地址等信息。每一个方法从调用开始到执行完成的过程,就对应着一个栈帧在虚拟机栈里面从入栈到出栈的过程。 2. 局部变量表:是一组变量值存储空间,用于存放方法参数和方法内部定义的局部变量。 3. 类变量有两次赋初始值的过程,一次在准备阶段,赋予系统初始值;另外一次在初始化阶段,赋予程序员定义的初始值。但局部变量就不一样了,如果一 ...
看过很多书,总结了很多笔记,这次开始放到网上。 1.虚拟机把描述类的数据从Class文件加载到内存,并对数据进行校验、转换解析和初始化,最终形成可以被虚拟机直接使用的Java类型,这就是虚拟机的类加载机制。 2.类从被 ...
Global site tag (gtag.js) - Google Analytics