java程序运行机制

java语言比较特殊,java语言的编译过程生成一种与平台无关的字节码(*.class文件),这种字节码不是可执行的,必须使用java解释器来解释执行。
大致步骤如下:

Created with Raphaël 2.1.0 java源文件 使用javac编译 生产*.class文件 使用java解释执行

JVM: java语言中负责执行字节码文件的java虚拟机。JVM是java程序跨平台的关键部分。在《疯狂java》中看到一段有意思的解释,如下:

JVM的作用很容易理解,就像有两只不同的笔,但需要把同一个笔帽套在不同的笔上,只有为这两支笔分别提供一个转换器。这个转换器向上的接口相同,用于适用同一个笔帽;向下的接口不同,用于适应两只不同的笔。在这个类比中,可以近似的理解两只不同的笔就是两个不同的操作系统,而同一个笔帽就是java字节码程序,转换器角色则对应JVM。

JDK: java SE Development kit, java标准版开发包,它提供了编译,运行java程序所需要的各种工具和资源,包括java编译器,java运行时环境,以及常用的java类库。
JRE: java运行时环境。
注:JRE包含JVM,JVM是运行java程序的核心虚拟机,而运行java程序不仅需要核心虚拟机,还需要其他类加载器、字节码校验器以及大量的基础类库。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值