Java基础学习(一)-java运行机制

1、java运行机制

java是先编译后执行

编译阶段

在编译阶段由java 编译器(javac)将java源文件(hello.java)编译为字节码文件(hello.class),在通过jvm进行执行
这里写图片描述

运行阶段

  1. 由jvm子系统class loader 加载字节码文件
  2. 通过字节码校验器(Bytecode Verifier):检查代码片段中是否存在违反对象访问权限的非法代码
  3. 解释器(Interpreter) 读取字节码流翻译为指令
  4. 由Runtime执行执行
    类加载执行

2、jvm组成

jvm主要的功能块分为类加载器、垃圾回收和执行引擎
JVM中把内存分为方法区、Java栈、Java堆、本地方法栈、PC寄存器5部分数据区域。
1. 方法区:用于存放类、接口的元数据信息,加载进来的字节码数据都存储在方法区
2. Java栈(虚拟机栈):执行引擎运行字节码时的运行时内存区,采用栈帧的形式保存每个方法的调用运行数据
3. 本地方法栈:执行引擎调用本地方法时的运行时内存区
4. Java堆(堆):运行时数据区,各种对象一般都存储在堆上
5. PC寄存器(程序计数器):功能如同CPU中的PC寄存器,指示要执行的字节码指令。
这里写图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值