【转载】jdk、jre、jvm等名词解释
来源:互联网 发布:在线大肚照自拍软件 编辑:程序博客网 时间:2024/04/29 20:54
摘自网络。
JDK, JRE 和JVM是Java编程语言的核心概念。尽管它们看起来差不多,作为程序员我们也不怎么关心这些概念,但是它们是不同的针对特定目的的产品。这是一道常见的java面试题,而本文则会一一解释这些概念并给出它们之间的区别。
Java 开发工具包 (JDK)
Java开发工具包是Java环境的核心组件,并提供编译、调试和运行一个Java程序所需的所有工具,可执行文件和二进制文件。JDK是一个平台特定的软件,有针对Windows,Mac和Unix系统的不同的安装包。可以说JDK是JRE的超集,它包含了JRE的Java编译器,调试器和核心类。目前JDK的版本号是1.7,也被称为Java 7。
Java虚拟机(JVM)
JVM是Java编程语言的核心。当我们运行一个程序时,JVM负责将字节码转换为特定机器代码。JVM也是平台特定的,并提供核心的Java方法,例如内存管理、垃圾回收和安全机制等。JVM 是可定制化的,我们可以通过Java 选项(java options)定制它,比如配置JVM 内存的上下界。JVM之所以被称为虚拟的是因为它提供了一个不依赖于底层操作系统和机器硬件的接口。这种独立于硬件和操作系统的特性正是Java程序可以一次编写多处执行的原因。
Java运行时环境(JRE)
JRE是JVM的实施实现,它提供了运行Java程序的平台。JRE包含了JVM、Java二进制文件和其它成功执行程序的类文件。JRE不包含任何像Java编译器、调试器之类的开发工具。如果你只是想要执行Java程序,你只需安装JRE即可,没有安装JDK的必要。
JDK, JRE 和JVM的区别
- JDK是用于开发的而JRE是用于运行Java程序的。
- JDK和JRE都包含了JVM,从而使得我们可以运行Java程序。
- JVM是Java编程语言的核心并且具有平台独立性。
即时编译器(JIT)
有时我们会听到JIT这个概念,并说它是JVM的一部分,这让我们很困惑。JIT是JVM的一部分,它可以在同一时间编译类似的字节码来优化将字节码转换为机器特定语言的过程相似的字节码,从而将优化字节码转换为机器特定语言的过程,这样减少转换过程所需要花费的时间。
2013年Oracle又发布了Server JRE,介于JDK和JRE之间。只运行tomcat, weblogic等的服务器装Server JRE就行。
- 【转载】jdk、jre、jvm等名词解释
- JVM、JRE、JDK名词解释
- Jdk及jre,jvm等基础知识
- 【转载】JDK,JRE,JVM区别与联系
- JAVA基础入门JDK、JRE、JVM等基本概念
- Java、JVM、JRE、JDK等组件的理解
- Java小白转载:JDK,JRE,JVM区别与联系
- 【转载】Jdk jre jvm的区别和联系
- java1---java环境---jdk,jre(1)----分清JavaEE,Tomcat,JVM,JRE,JDK,SDK等基本概念
- jre,jvm,jdk
- JDK、JRE与JVM
- JDK,JRE,JVM
- jdk、jre与jvm
- jdk,jre,jvm
- java jdk jvm jre
- jdk、jre、jvm详解
- JDK、JRE与JVM
- JRE, JDK, JVM
- GPS模块应用程序
- Tracert(traceroute)&Ping 工作原理分析
- JS中call和apply
- meanshift运动跟踪算法详解
- CTF-web练习
- 【转载】jdk、jre、jvm等名词解释
- nyist 740 “炫舞家“ST
- JavaScript
- //6.5 定义一个日期类 Date,该类对象存放一个日期,可以提供的操作有: //void GetDate(); //取日期值,格式如“2001 年 2 月 5 日” //void GetYear(
- 思考各种编程语言是如何适应运行环境(调用外设)的?
- View setSystemUiVisible 测试
- 随机数字的大小排列
- 并发编程
- 62. Unique Paths