Java中的JDK、JRE及JVM的简介及功能
JDK:
JDK(Java Development Kit) 是 Java 语言的软件开发工具包(SDK)。没有JDK的话,无法编译Java程序(指java源码.java文件),如果想只运行Java程序(指class或jar或其它归档文件),要确保已安装相应的JRE;
JRE:
JRE为Java Runtime Environment的简称,Java Runtime Environment(包括Java Plug-in)是Sun的产品,包括两部分:
- Java Runtime Environment
- JavaRuntimeEnvironment(JRE)是可以在其上运行、测试和传输应用程序的Java平台
- 它包括Java虚拟机(jvm)、Java核心类库和支持文件
- 它不包含开发工具(JDK)--编译器、调试器和其它工具
- JRE需要辅助软件--Java Plug-in--以便在浏览器中运行applet
- Java Plug-in
- Java Plug-in软件允许Java Applet和JavaBean组件在使用Sun的Java Runtime Environment(JRE)的浏览器中运行,而不是在使用缺省的Java运行环境的浏览器中运行。
- Java Plug-in可用于Netscape Navigator和Microsoft Internet Explorer。
JVM
- Java虚拟机(JVM)一种用于计算机设备的规范,可用不同的方式(软件或硬件)加以实现。编译虚拟机的指令集与编译微处理器的指令集非常类似
- Java虚拟机包括一套字节码指令集、一组寄存器、一个栈、一个垃圾回收堆和一个存储方法域
- Java虚拟机(JVM)是可运行Java代码的假想计算机。只要根据JVM规格描述将解释器移植到特定的计算机上,就能保证经过编译的任何Java代码能够在该系统上运行
- Java虚拟机是一个想象中的机器,在实际的计算机上通过软件模拟来实现。Java虚拟机有自己想象中的硬件,如处理器、堆栈、寄存器等,还具有相应的指令系统
- Java虚拟机规范定义了一个抽象的——而非实际的——机器或处理器。这个规范描述了一个指令集,一组寄存器,一个堆栈,一个“垃圾堆”,和一个方法区。一旦一个Java虚拟机在给定的平台上运行,任何Java程序(编译之后的程序,称作字节码)都能在这个平台上运行
- Java虚拟机(JVM)可以以一次一条指令的方式来解释字节码(把它映射到实际的处理器指令),或者字节码也可以由实际处理器中称作just-in-time的编译器进行进一步的编译
JDK、JRE及JVM的关系图:

Java中的JDK、JRE及JVM的简介及功能的更多相关文章
- Java基础知识 ——JDK,JRE和JVM
1.开发简单的Java程序过程: 名词解释: JDK:JDK是 Java 语言的软件开发工具包,主要用于移动设备.嵌入式设备上的java应用程序.JDK是整个java开发的核心,它包含了JAVA的运行 ...
- Java语言的跨平台性-JDK,JRE和JVM
Java语言的跨平台性 1 Java虚拟机--JVM JVM(Java Virtual Machine ):Java虚拟机,简称JVM,是运行所有Java程序的假想计算机,是Java程序的 运行环境, ...
- Difference between JDK, JRE and JVM
With Java programming language, the three terms i.e. JDK, JRE and JVM will always be there to unders ...
- java学习之Java中JDK,JRE和JVM之间的关系(转载)
最近要重新抓一下java,大量扫技术文档,保存下来供自己查阅.以下转载自http://www.cnblogs.com/xiaofeixiang/p/4085159.html 初学JAVA很容易被其中的 ...
- Java中JDK,JRE和JVM之间的关系
初学JAVA很容易被其中的很多概念弄的傻傻分不清楚,首先从概念上理解一下吧,JDK(Java Development Kit)简单理解就是Java开发工具包,JRE(Java Runtime Envi ...
- Java中JDK,JRE和JVM之间的关系-(转载)
初学JAVA很容易被其中的很多概念弄的傻傻分不清楚,首先从概念上理解一下吧,JDK(Java Development Kit)简单理解就是Java开发工具包,JRE(Java Runtime Envi ...
- JAVA语言的跨平台性和JDK,JRE与JVM
Java虚拟机--JVM ~JVM:java虚拟机简称JVM是运行所有java程序的假想计算机,是java程序的运行环境,是java最具有吸引力的特性之一,我们编写的java代码,都运行在JVM之上 ...
- Java学习-003-JDK、JRE、JVM简介
此文主要对 JDK.JRE.JVM进行简单的介绍,给各位亲们一个参考.若有不足之处,敬请各位大神指正,不胜感激! 一.基本概念 JDK(Java Development Kit:Java 开发工具包) ...
- linux配置java环境变量jdk jre(详细)【转】
linux配置java环境变量(详细) 本文完全引用自: http://www.cnblogs.com/samcn/archive/2011/03/16/1986248.html 一. 解压安装jdk ...
- 01 java 基础:jdk jre path classpath 相关问题
JRE : Java 运行环境 JDK : Java 开发工具包,其中包括 JRE (javac.java.javap.jar.javadoc .javah 等命令) JVM : Java 虚拟机 ...
随机推荐
- 代码依赖包安全漏洞检测神器 —— Dependency Check
目前各个企业对于应用的安全越来越重视,而解决应用漏洞的本质是从代码安全抓起.通常关于代码的安全问题有两类:代码本身的安全问题和代码依赖包存在的安全问题.对于代码本身的安全问题,我们可以通过静态代码分析 ...
- .NET周刊【12月第3期 2024-12-15】
国内文章 重磅推出 Sdcb Chats:一个全新的开源大语言模型前端 https://www.cnblogs.com/sdcb/p/18597030/sdcb-chats-intro Sdcb Ch ...
- 优化大宽表查询性能,揭秘GaussDB(DWS) 谓词列analyze
本文分享自华为云社区<GaussDB(DWS) 谓词列analyze揭秘>,作者:SmithCoder. 1. 前言 适用版本:[9.1.0.100(及以上)] 当前GaussDB(DW ...
- Qt编写物联网管理平台37-逻辑设计
一.前言 本系统的逻辑设计是个人认为做过的系统中最好的,一个系统支持多个通信端口,每个通信端口都可选不同的通信协议,一个通信端口可以接255个控制器,相当于主设备,一个控制器可以接255个探测器,相当 ...
- JavaScript中find()和 filter()方法的区别小结
前言 JavaScript 在 ES6 上有很多数组方法,每种方法都有独特的用途和好处. 在开发应用程序时,大多使用数组方法来获取特定的值列表并获取单个或多个匹配项. 在列出这两种方法的区别之前,我们 ...
- Pytorch Layer层总结
卷积层 nn.Conv1d 对由多个输入平面组成的输入信号应用一维卷积. nn.Conv2d 在由多个输入平面组成的输入信号上应用 2D 卷积. nn.Conv3d 对由多个输入平面组成的输入信号应用 ...
- 让我看看有多少人不知道Vue3中也能实现高阶组件HOC
前言 高阶组件HOC在React社区是非常常见的概念,但是在Vue社区中却是很少人使用.主要原因有两个:1.Vue中一般都是使用SFC,实现HOC比较困难.2.HOC能够实现的东西,在Vue2时代mi ...
- 更改高通xbl串口log波特率
本修改基于高通QCM6125平台,目的是为了满足客户无聊的需求. 注意事项: 基准时钟频率需要是硬件和驱动支持的频率,时钟频率和分频系数可以从AP侧驱动中找到 最低分频系数需要满足分频公式(能够被整除 ...
- MSM8953/SDM450 去PMI的USB3.0 TYPE-C Micro USB OTG功能适配
提前说明一下有哪些"坑". 1.PM8953 GPIO_8的TZ权限 2.PM8953 GPIO_8寄存器的写入保护 3.去掉高通默认的ID检测 4.增加dwc3的ID检测 5.增 ...
- appExtend.js
appextend.js是自己编写的一个手机网页过渡时显示loading的一个js插件. appextend.js : var appExtend = function () { this.setHi ...