JDK、JRE、JVM是什么?有什么区别?
JDK
JDK( Java Development Kit ),Java开发工具包,提供了编译、运行Java程序所需要的各种工具 ,除了包含JRE以外还包含了开发Java程序所必须的命令工具。
JDK是Java程序开发者用来来编译、调试java程序用的开发工具包。JDK的工具也是Java程序,也需要JRE才能运行。为了保持JDK的独立性和完整性,在JDK的安装过程中,JRE也是 安装的一部分。所以,在JDK的安装目录下有一个名为jre的目录,用于存放JRE文件。
JRE
JRE( Java Runtime Environment ),Java运行环境,主要包含两个部分:JVM和Java系统类库。
所有的Java 程序都要在JRE下才能运行。普通用户只需要运行已开发好的Java程序,安装JRE即可。
JVM
JVM( Java Virtual Mechinal ),Java虚拟机,负责加载、执行字节码文件(.class),它是Java实现跨平台的核心(一次编写,多处运行)。
JVM是一个虚构出来的计算机,是通过在实际的计算机上仿真模拟各种计算机功能来实现的。JVM有自己完善的硬件架构,如处理器、堆栈、寄存器等,还具有相应的指令系统。Java语言最重要的特点就是跨平台运行。使用JVM就是为了支持与操作系统无关,实现跨平台。
三者区别
三者关系是层层递进的:JDK>JRE>JVM
即: JDK=JRE+编译、运行等命令工具
JRE=JVM+Java系统类库
注意:
- 运行Java程序的最小环境为JRE
- 开发Java程序的最小环境为JDK
JDK、JRE、JVM是什么?有什么区别?相关推荐
- JDK,JRE,JVM区别与联系
很多朋友可能跟我一样,已经使用JAVA开发很久了,可是对JDK,JRE,JVM这三者的联系与区别,一直都是模模糊糊的. 今天特写此文,来整理下三者的关系. JDK : Java Development ...
- AJPFX关于JDK,JRE,JVM的区别与联系
很多朋友可能跟我一样,对JDK,JRE,JVM这三者的联系与区别,一直都是模模糊糊的. 今天我们来整理下三者的关系.JDK : Java Development ToolKit(Java开发工具包). ...
- [马士兵] 一. 初识JAVA 20. 反编译工具的使用 21. 本章最后一段代码 22. 扩展面试题: JDK, JRE, JVM区别
20. 反编译工具的使用 编译 源代码----->class 反编译 class---->源代码 反编译工具 jd-gui.exe 21. 本章最后一段代码 public class Hi ...
- jdk jre jvm 关系
很多朋友可能跟我一样,已经使用JAVA开发很久了,可是对JDK,JRE,JVM这三者的联系与区别,一直都是模模糊糊的. 今天特写此文,来整理下三者的关系. JDK : Java Development ...
- Path环境变量是什么?有什么用?怎么工作?JDK,JRE,JVM,集成开发工具是什么?有什么用?怎么工作?JDK安装包文件结构?有必要设置Path环境变量?Eclipse和IDEA开发工具的运作
简介 本文主要讲述,Path环境变量是什么?有什么用?怎么工作的?JDK,JRE,JVM,集成开发工具是什么?有什么用?怎么工作的?JDK安装包文件结构?有没有必要设置Path环境变量?Eclip ...
- java实验原理和图例_图例解析JDK,JRE,JVM概念及使用
本文向大家简单介绍一下JDK,JRE,JVM概念及用法,为了保持JDK的独立性和完整性,在JDK的安装过程中,JRE也是安装的一部分.所以,在JDK的安装目录下有一个名为jre的目录,用于存放JRE文 ...
- 名词解释 JDK JRE JVM
名词解释 JDK JRE JVM JRE JRE: Java Runtime Environment JRE顾名思义是java运行时环境,包含了java虚拟机,java基础类库.是使用java语言编写 ...
- jdk jre jvm的关系
http://blog.csdn.net/gaopeng0071/article/details/9914683 JDK : Java Development ToolKit(Java开发工具包).J ...
- JDK/JRE/JVM之间的关系
> JDK Java Development ToolKit(Java开发工具包). JDK是整个JAVA的核心,包括了Java运行环境(Java Runtime Envirnment),一堆J ...
- jdk,jre,jvm的包含关系
jdk,jre,jvm的包含关系 他们三个是包含关系 jdk包含jre,jre包含jvm jdk(Java Development ToolKit):java开发工具包 jre(Java Runtim ...
最新文章
- 基于Dijkstra算法的武汉地铁路径规划!(附下载)
- Android中Intent传递对象的两种方法(Serializable,Parcelable)
- 笔记-项目管理基础知识-项目管理办公室(PMO)
- 谈一谈Spring-Mybatis在多数据源配置上的坑
- 26 Java GC算法 垃圾收集器、标记 -清除算法、复制算法、标记-压缩算法、分代收集算法
- 深入理解javascript原型和闭包(11)——执行上下文栈
- java 怎么获取形参名_获得方法形参名称列表 -- 哦也,搞定!!
- android studio列模式,在Android studio 中使用单例模式
- java 反射创建对象并赋值_[原创] Java JDBC连接数据库,反射创建实体类对象并赋值数据库行记录(支持存储过程)...
- 2018年全国多校算法寒假训练营练习比赛(第一场)G 圆圈
- 字节跳动斩获支付牌照欲建金融帝国,技术实力配得上野心吗?
- C# WinForm开发系列 - Regular Expression
- View-client自动登录
- 使用oracle执行txt语句,oracle常用SQL语句.txt
- JAVA常用的快捷键
- Android开发之JSON使用
- 我的世界java作弊怎么开_我的世界怎么开作弊?如何启用作弊模式?
- 3D建模到底难不难?
- 华为路由器联动_不拉宽带也能畅快冲浪,华为移动路由帮你实现
- 【看这个篇就够了】95%成为网络安全工程师