zoukankan      html  css  js  c++  java
  • JDK、JRE与JVM的关系

    Java是一门编程语言,同时也是一个运行平台和开发平台。大家进入Java开发领域,一定会经常与JDK、JRE和JVM三个名词打交道。我们梳理一下这三个名词,对整个Java平台也会有更清晰的理解。

    • JDK : Java Development ToolKit
    • JRE:Java Runtime Environment
    • JVM:Java Virtual Machine

    简单来说,这三者是逐层包含的关系。来看一个Java官方介绍Java的图:

    Java-Concept-Diagram.png

    从图中可以看到:

    • JDK在包含JRE之外,提供了开发Java应用的各种工具,比如编译器和调试器。

    • JRE包括JVM和JAVA核心类库和支持文件,是Java的运行平台,所有的Java程序都要在JRE下才能运行。

    • JVM是JRE的一部分,Java虚拟机的主要工作是将Java字节码(通过Java程序编译得到)映射到本地的 CPU 的指令集或 OS(操作系统) 的系统调用。JVM回根据不同的操作系统使用不同的JVM映射规则,从而使得Java平台与操作系统无关,实现了跨平台的特性性。

    上面这张图包含了太多元素,我们用一张更加简化的图就能更清晰得看到三者之间的关系:

    JDK-JRE-JVM.png

    在实际开发过程中,我们首先编写Java代码,然后通过JDK中的编译程序(javac)将Java文件编译成Java字节码(.class文件),JRE加载和验证Java字节码,JVM解释字节码,映射到CPU指令集或OS的系统调用,完成最终的程序功能。

  • 相关阅读:
    ubuntu安装sublime无工具栏解决办法
    ubuntu安装eclipse无工具栏解决办法
    数据库设计
    cglib代理
    多线程简单实例(3)线程池
    多线程简单实例(2)生产者和消费者
    STL之迭代器(iterator)
    STL之vector
    “由于这台计算机没有终端服务器客户端访问许可证”解决方案
    STL之容器(containers) 简介
  • 原文地址:https://www.cnblogs.com/soyo/p/7890186.html
Copyright © 2011-2022 走看看