`
yxwang0615
  • 浏览: 561111 次
  • 性别: Icon_minigender_1
  • 来自: 青岛
社区版块
存档分类
最新评论

JDK 、JRE 、 JVM、 DVM、JAVA解释器

    博客分类:
  • java
阅读更多
JDK:(Java Development Kit) Java软件开发包,可以包括函数库、编译程序等。

JRE:(Java Runtime Enviroment) Java的运行环境,是面向Java程序的使用者.

JVM:(Dalvik Virtual Machine)JVM是一种抽象机器,它附着在具体操作系统之上,本身具有一套虚机器指令,并有自己的栈、寄存器组等。但JVM通常是在软件上而不是在硬件上实现。(目前,SUN系统公司已经设计实现了Java芯片,主要使用在网络计算机NC上。另外,Java芯片的出现也会使Java更容易嵌入到家用电器中。)JVM是Java平台无关的基础,在JVM上,有一个Java解释器用来解释Java编译器编译后的程序。Java编程人员在编写完软件后,通过Java编译器将Java源程序编译为JVM的字节代码。任何一台机器只要配备了Java解释器,就可以运行这个程序,而不管这种字节码是在何种平台上生成的。解释器不能单独执行,必须要有虚拟机。解释器它的作用只是把代码解释成虚拟机能够读懂的东西。Java采用的是基于IEEE标准的数据类型。通过JVM保证数据类型的一致性,也确保了Java的平台无关性

注意:JVM是属于JRE的,而现在我们安装JDK时也附带安装了JRE,所以安装了JDK就有了JRE、JVM和JVM中的java解析器。

DVM:(Dalvik Virtual Machine)很多人认为DVM是一个Java虚拟机,因为Android的编程语言恰恰就是Java语言。但是这种说法并不准确,因为 Dalvik虚拟机并不是按照Java虚拟机的规范来实现的,两者并不兼容;同时还有几个的不同点:

1.Java虚拟机运行的是Java字节码,而Dalvik虚拟机运行的则是其专有的文件格式DEX(Dalvik Executable),JVM是基于栈的,而DVM基于寄存器(基于寄存器的好处是编译的时候,花费的时间更短,在其他各方面性能上也有很大的提升)。
2.在Java SE程序中的Java类会被编译成一个或者多个字节码文件(.class)然后打包到JAR文件,而后Java虚拟机会从相应的CLASS文件和JAR文件中获取相应的字节码;Android应用虽然也是使用Java语言进行编程,但是在编译成CLASS文件后,还会通过一个工具(dx)将应用所有的 CLASS文件转换成一个DEX文件,而后DVM会从其中读取指令和数据。
3.DVM依赖于Linux内核的一些功能,如线程和底层内存管理机制。所以DVM只能运行在Android操作系统上,JVM并不依赖其他外部条件,所以它可以运行在各种平台之上。
分享到:
评论
1 楼 my没有 2013-09-18  
    

相关推荐

    jdk、jre、jvm的区别

    ### JDK、JRE与JVM的区别详解 #### 一、引言 在深入探讨JDK、JRE与JVM之间的区别之前,我们首先需要明确这三个概念的基本定义及其各自的作用。对于初学者而言,理解这些核心组件是学习Java编程的基础。 #### 二、...

    Java零基础 - JDK JRE JVM三者关系.md

    ### Java零基础-JDK JRE JVM三者关系详解 #### 一、引言 在Java编程的世界里,JDK(Java Development Kit)、JRE(Java Runtime Environment)和JVM(Java Virtual Machine)这三个核心概念是不可或缺的基础知识。...

    详解Java中的JDK、JRE、JVM

    Java开发中的JDK、JRE和JVM是三个至关重要的概念,它们构成了Java应用程序的运行基础。理解这三个术语以及它们之间的关系是每个Java开发者必备的知识。 JDK(Java Development Kit)是Java开发工具包,它是Java开发...

    JDK JRE与JVM1

    Java 技术体系的核心组成部分包括 JDK (Java Development Kit),JRE (Java Runtime Environment) 和 JVM (Java Virtual Machine)。理解这三个概念对于Java开发者至关重要。 首先,JDK是Java开发工具包,它是Java...

    Java中JDKJRE和JVM解析.doc

    ### Java中的JDK、JRE与JVM解析 #### 一、引言 在Java编程领域,JDK、JRE和JVM这三个概念是至关重要的基础知识点。虽然它们经常被提及,但很多人仍然对它们之间的关系和各自的功能感到困惑。这篇文章将深入探讨这...

    Java中的数据类型及JDK, JRE, 和 JVM解释及关系.zip

    在Java的世界里,了解数据类型、JDK(Java Development Kit)、JRE(Java Runtime Environment)以及JVM(Java Virtual Machine)的关系至关重要,它们是Java程序运行的基础。 首先,让我们深入探讨Java中的数据...

    一张图看懂JVM、JRE、JDK

    一张图看懂JVM、JRE、JDK

    大数据必学Java基础(九):JDK,JRE,JVM的区别

    1. JDK(Java Development Kit):Java开发工具包,是Java开发人员必备的软件,包含了编译器(javac)、JRE、调试器、文档生成工具、打包工具等。它提供了编写、编译、测试和部署Java应用程序所需的所有工具。 2. ...

    java jdk jre8

    Java JDK与JRE是Java开发和运行环境中的两个核心组件,它们在软件开发和应用程序执行中扮演着至关重要的角色。本文将深入探讨这两个组件的概念、功能以及它们之间的关系。 Java Development Kit (JDK) 是Oracle公司...

    jdk与jre的区别

    JRE 是 Java 的运行环境,它提供了 Java 程序的运行环境,包括 Java 虚拟机(JVM)、类加载器、运行时数据区等。JRE 的主要组成部分包括: * Java 虚拟机(JVM):执行 Java 字节码的虚拟机 * 类加载器:加载 Java ...

    JDK、JRE、JVM是什么?

    JDK(java Development Kit):java 的开发和运行环境,包括java 的开发工具和 jre,在程序员的电脑上当然要安装JDK; JRE(Java Runtime Environment):它是Java运行环境,包括,java 运行的所需的类库+JVM(java ...

    jdk8 jvm 参数图(随手参考好资料)

    常用jvm参数都在这张图中,参考起来方便,是国外大神整理的

    java1.8jdk/jre.rar

    在安装JDK后,你需要配置环境变量`JAVA_HOME`,指向JDK的安装目录,以便编译器和解释器可以找到。同时,还需将`PATH`环境变量更新,包含`JAVA_HOME/bin`目录,这样系统命令行就能识别`javac`和`java`命令。 4. ...

    JDK,JRE,JVM区别与联系.pdf

    JDK包含了Java运行环境(JRE)、一系列Java开发工具(如javac编译器、java执行命令、jdb调试器等)以及Java基础类库(如rt.jar)。开发者使用JDK进行Java程序的编写、编译和运行。JDK分为不同版本,如J2SE(标准版)...

    java环境中的JDK、JVM、JRE详细介绍

    它包括Java运行环境(JRE),一套Java工具(如javac编译器、java命令行解释器、jdb调试器等),以及Java API类库,这些类库使得开发者能够访问Java的各种功能和类。JDK分为三个版本:标准版(Java SE)、企业版...

    java jdk jre 资源信息

    2. **Java解释器(java)**:运行编译后的Java字节码,负责在Java虚拟机(JVM)上执行程序。 3. **Java文档生成器(javadoc)**:用于自动生成API文档,帮助开发者理解类库的使用方法。 4. **Java打包工具(jar)**...

Global site tag (gtag.js) - Google Analytics