java_3:JVM、JRE、JDK区别和联系
首先 三者之间存在包含关系
JVM + 核心类库 = JRE
JRE + java开发工具(javac.exe/jar.exe) = JDK
什么是JVM?
我们知道Java语言有一个独特的优点就是可以跨平台
像其它语言,比如C,我们要针对不同操作系统windos,mac……各出一套应用程序
而Java则可以做到一个软件在任何的操作系统中都能执行,这就是JVM的功劳
如下图所示:

本来我们编写的Java代码计算机还是不认识的,但是我们在每一个操作系统上都会配置一个与之相对应的JVM,会帮我们把我们的Java代码翻译成对应操作系统可以识别的内容。
所以说我们在第一次写Java程序时都要先把JVM给装好。
什么是JRE?
Java Runtime Environment 即Java运行环境
JVM + 核心类库 = JRE
刚才不是说只需要装JVM吗?那这个JRE是个什么鬼东西?
是因为只有JVM不能运行,它还需要核心类库,才能保证Java运行
由于JRE包含JVM 因此我们只要直接安装JRE 就顺便把JVM安装了

什么是JDK?
Java Development Kit 即Java开发工具包
JRE + java开发工具(javac.exe/jar.exe) = JDK
前面不是说安装了JRE以后,Java程序就可以运行了吗?那为啥子还要安装这个JDK?
这是因为我们是开发人员,我们是写软件的,软件光能运行不行啊,得给我们一个地方让我们来写代码吧?所以就需要java开发工具给我们腾出一个地儿来,好让我们coding
由于JDK包含JRE 因此我们只需要安装JDK就都有了

java_3:JVM、JRE、JDK区别和联系的更多相关文章
- JVM, JRE,JDK 的区别
在网上看到一篇讲解jvm,jre,jdk区别的文章,感觉不错,就收藏到自己的博客了. 1.JVM -- java virtual machine JVM就是我们常说的java虚拟机,它是整个java实 ...
- JVM JRE JDK三者的区别和联系
一. 详细介绍1.JVM -- java virtual machineJVM就是我们常说的java虚拟机,它是整个java实现跨平台的 最核心的部分,所有的java程序会首先被编译为.class的类 ...
- 辨析ADK&JVM&JRE&JDK&ADT
一.SDK 英文全称:Software Development Kit 中文译名:软件开发工具包 详解: 由第三方服务商提供的实现软件产品某项功能的工具包. 为了扩展软件功能或其它方面而设计出来给开发 ...
- java JVM JRE JDK三者之间的关系
JDK在包含JRE之外,提供了开发Java应用的各种工具,比如编译器和调试器. JRE包括JVM和JAVA核心类库和支持文件,是Java的运行平台. JVM是JRE的一部分,Java虚拟机的主要工作是 ...
- java jvm jre jdk三者的关系
jvm:java虚拟机器(跨平台的关键) jre:java运行环境 jdk:java 开发工具包(kit) jdk>jre>jvm 环境变量配置 https://www.cnblogs.c ...
- JVM,JRE,JDK
JVM (Java Virtual Machine) : Java虚拟机,运行所有Java程序的假象计算机,是Java程序的运行环境,跨平台性由JVM实现. JRE (Java Runtime Env ...
- 一图看懂JVM,JRE,JDK的关系
- POPTEST老李谈JVM、JRE、JDK、java ee sdk with jdk区别
POPTEST老李谈JVM.JRE.JDK.java ee sdk with jdk区别 poptest是国内唯一一家培养测试开发工程师的培训机构,以学员能胜任自动化测试,性能测试,测试工具开发等 ...
- JRE与JVM、JDK的区别
JRE与JVM.JDK的区别 一. 详细介绍1.JVM -- java virtual machine JVM就是我们常说的java虚拟机,它是整个java实现跨平台的 最核心的部分,所有的java程 ...
- Java的一些常见问题,JRE,JDK,JVM,包等概念理解
Java常见错误: 文件名字应该与文件中public类的名字相同 public static void main(String[] args); 如何定位错误和解决错误. JVM,JRE,JDK解释和 ...
随机推荐
- Javascript——(2)DOM
1.DOM 1)直接寻找 (1)document.getElementById() //根据ID获取一个标签: (2) document.getElementsByName() // ...
- JS高级---实例对象和构造函数之间的关系
实例对象和构造函数之间的关系: 1. 实例对象是通过构造函数来创建的---创建的过程叫实例化 2. 如何判断对象是不是这个数据类型? 1) 通过构造器的方式 实例对象.构造器==构造函数 ...
- 6_8 树(UVa548)<从中序和后序恢复二叉树>
你的任务是找出一棵二叉树中最小路径上终端节点(树叶,leaf node)的值.所谓路径乃指从根节点(root)旅行到任一终端节点.路径的值为所经过的节点的值的和(包含根节点及终端节点).而最小路径就是 ...
- 去除移动端苹果手机(ios)的input默认样式与input禁止键盘出现的方式
样式: input{-webkit-appearance: none;} 在iPhone plus点击input框出生日期时会出现如下图: 为了去掉下面那条苹果自带的,可以这样处理:在HTML中的in ...
- Jmeter 断言使用
先说一下使用断言的目的:在request的返回层面增加一层判断机制.因为request成功了,并不代表结果一定正确.类似于QTP中的检查点检查点.断言的使用方法: step_1:在你选择的Sample ...
- openresty-component
1.Array Var Nginx Module ArrayVarNginxModulelocation /foo { array_split ',' $arg_files to=$array; # ...
- 树莓派raspbian安装matchbox-keyboard虚拟键盘
环境:raspbian-stretch(2018-06-27) 树莓派:3代B型 官网安装地址:http://ozzmaker.com/virtual-keyboard-for-the-raspber ...
- 吴裕雄 python 神经网络——TensorFlow实现搭建基础神经网络
import numpy as np import tensorflow as tf import matplotlib.pyplot as plt def add_layer(inputs, in_ ...
- IIS-简介
参考:https://www.jb51.net/article/85909.htm IIS是什么 iis是用来做什么的? IIS全程为Internet Information Service(In ...
- 【原】python-jenkins信息
1.官方文档: https://python-jenkins.readthedocs.io/en/latest/examples.html#example-1-get-version-of-jenki ...