JVM介绍
一、什么是JVM
1.
2.软件层机器码翻译
3.内存管理
好处:自动进行管理,不用手动清除
不足:有时候会删掉啊有用的东西
4.为什么有jvm
二、运行时数据区
(一).JVM运行时数据区
a.运行时数据区是什么?
举例:喝水到体内由水分子分解成H和O来提供能量
应用:每一个java类运行到JVM后,被打散,从不同的地方拿取需要的东西。
(二).程序计数器
作用:指向当前线程正在执行的字节码指定的地址、行号。
(三).虚拟机栈
a.作用
存储当前的线程运行方法所需的数据、指令、返回地址
b..如何存储的?
1.组成
绿色区域是栈帧
运行时每个方法都会压栈。
2.局部变量表
长度为32
存储方式:int、long、float、double、reference、returnType。
byte、short、char压栈之前,回先转换成int。
3.操纵数栈
作用:是工作区,大多数指令从这里弹出数据,执行运算、然后吧结果压回栈。
访问:压栈和出栈
4.动态链接
作用:在方法执行的时候解析,解析常量池