JAVA虚拟机
1、Java虚拟机是什么?
A、抽象规范;
B、一个具体实现;
C、一个运行的虚拟机实例;
2、虚拟机的生命周期
A、Java虚拟机的职责就是负责运行一个Java程序;
B、当启动一个Java程序时,Java虚拟机就开始了,当停止一个Java程序是,Java虚拟机就消失了;
C、如果同时启动多个程序,则同时存在多个虚拟机;
3、虚拟机的体系结构
A、类装载器子系统负责加载编写的Class文件或者API里面的Class文件;
B、执行引起负责执行被类加载器加载后的字节码文件;
C、方法区和堆被所有线程共享;
C1、方法区存放字节码文件的内容;
C2、对存放程序运行时生成的对象;
D、Java栈+程序计数器(PC寄存器)+本地方法栈属于线程私有的,其他线程不可访问,只有该线程能访问;
D1、Java栈中存放程序运行时方法调用的状态:局部变量、返回值、传入的参数、运算的中间结果;
D2、在程序运行时程序计数器的值总是指向下一条将被执行的命令;
D3、本地方法栈:本地方法的状态以某种依赖于具体实现的方式存放在本地方法栈中;也可能是在寄存器或某些与特定实现相关的内存中;
E、Java栈有多个帧组成,每个帧存放方法调用的状态;