jdk、jre、jvm区别与联系

 

  JVM :英文名称(Java Virtual Machine),就是我们耳熟能详的 Java 虚拟机。它只认识 xxx.class 这种类型的文件,它能够将 class 文件中的字节码指令进行识别并调用操作系统向上的 API 完成动作。所以说,jvm 是 Java 能够跨平台的核心,具体的下文会详细说明。

  JRE :英文名称(Java Runtime Environment),我们叫它:Java 运行时环境。它主要包含两个部分,jvm 的标准实现和 Java 的一些基本类库。它相对于 jvm 来说,多出来的是一部分的 Java 类库。

  JDK :英文名称(Java Development Kit),Java 开发工具包。jdk 是整个 Java 开发的核心,它集成了 jre 和一些好用的小工具。例如:javac.exe,java.exe,jar.exe 等。

 

  JVM 虚拟机

  JRE 虚拟机+库

  JDK虚拟机+库+用户使用的javac编译程序等

 

  显然,这三者的关系是:一层层的嵌套关系。JDK>JRE>JVM

 

转载于:https://www.cnblogs.com/rivsidn/p/10854112.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/386826.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

autoencoder自编码器原理以及在mnist数据集上的实现

Autoencoder是常见的一种非监督学习的神经网络。它实际由一组相对应的神经网络组成(可以是普通的全连接层,或者是卷积层,亦或者是LSTMRNN等等,取决于项目目的),其目的是将输入数据降维成一个低维度的潜在编…

vscode编写插件详细过程

vscode编写插件详细过程 前言 之前编写了一个vscode插件用vscode写博客和发布,然后有园友要求写一篇来介绍如何开发一个vscode扩展插件,或者说介绍开发这个插件的过程。然而文章还没有写,园子里面已经有人发布一个文章,是园友上…

cannot find output in imported module librosa报错解决

librosa一直都是用处很广泛的python声音信号处理模块,但在最近的版本更新中,将原本的librosa.output给删去了。 为了代替之前的librosa.output.write_wav函数将音频写入wav文件中,现可以用模块soundfile代替。 soundfile.write(file, data, …

2018-2019-2 20175328 《Java程序设计》第十一周学习总结

十三章主要内容——Java网络编程 一、URL类 URL类是java.net包中的一个重要的类,URL的实例封装着一个统一资源定位符(Uniform Resource Locator),使用URL创建对象的应用程序称作客户端程序。 一个URL对象通常包含最基本的三部分信息:协议、地…

修改Header方法

/*** 修改header信息&#xff0c;key-value键值对儿加入到header中,如果存在&#xff0c;替换* param request* param key* param value*/ public static void reflectRequestParam(HttpServletRequest request, String key, String value){Class<? extends HttpServletReq…

pytorch学习笔记 1. pytorch基础 tensor运算

pytorch与tensorflow是两个近些年来使用最为广泛的机器学习模块。开个新坑记录博主学习pytorch模块的过程&#xff0c;不定期更新学习进程。 文章较为适合初学者&#xff0c;欢迎对代码和理解指点讨论&#xff0c;下面进入正题。 import torch import numpy as npt1 torch.te…

2019年区块链的主旋律是中间层协议

2019年区块链的主旋律是中间层协议 过去一年加密资产市场从其峰值下跌超过85%的市值。但对我&#xff0c;一个坚定的区块链企业家&#xff0c;这实际上是一件好事&#xff0c;区块链的未来看起来比以往任何时候都更有希望。2017年ICO热潮开始的疯狂至少产生了一个强烈的积极影响…

Java枚举的内容可以使用map的方式

枚举的内容可以使用map的方式 package com.chinamobile.framework.common.enums;import org.springframework.util.CollectionUtils; import org.springframework.util.StringUtils;import java.util.ArrayList; import java.util.HashMap; import java.util.List; import jav…

tensorflow gpu windows配置步骤教学

本文主要针对在windows10环境下的tensorflow配置问题&#xff0c;在linux和mac等其他环境中的配置就不过多赘述(windows总是那个问题最多的环境&#xff0c;建议使用linux &#x1f603;)。 本文中配置的环境为 python 3.8.5 tensorflow-gpu 2.4.1 1. 更新nvidia显卡驱动至最…

numpy一维数组永远为列向量

import numpy as np a np.array([1,3,4,5]) print(a.shape) a np.transpose(a) print(a.shape) print(a)a np.ravel(a) print(a.shape) print(a)a a.reshape((1,4)) print(a.shape)输出如下 (4,) (4,) [1 3 4 5] (4,) [1 3 4 5] (1, 4)我们会发现&#xff0c;对于一维的数…

【BJOI 2019】奥术神杖

题意 你有一个长度为 $n$ 的模板串&#xff08;由 $0-9$ 这 $10$ 个数字和通配符 $.$ 组成&#xff09;&#xff0c;还有 $m$ 个匹配串&#xff08;只由 $0-9$ 这 $10$ 个数字组成&#xff09;&#xff0c;每个匹配串有一个魔力值 $v_i$。你要把模板串的每个 $.$ 都换成一个数字…

keras模型中的默认初始化权重

权重的初始化&#xff0c;决定了模型训练的起点。一个良好的初始化可以加快训练过程&#xff0c;同时避免模型收敛至局部最小值。为了在训练过程中避免使得权重的变化总沿着同一个方向&#xff0c;我们尽量避免将所有权重都初始化为同一个值&#xff0c;如全0矩阵或全1矩阵。 …

java oracle的枚举错误

public enum OracleErrorTypeEnum implements BaseEnum {ORA00001("ORA-00001","不允许有重复的数据"),ORA00017("ORA-00017","请求会话以设置跟踪事件"),ORA00018("ORA-00018","超出最大会话数"),ORA00019(&quo…

C# 篇基础知识10——多线程

1.线程的概念 单核CPU的计算机中&#xff0c;一个时刻只能执行一条指令&#xff0c;操作系统以“时间片轮转”的方式实现多个程序“同时”运行。操作系统以进程&#xff08;Process&#xff09;的方式运行应用程序&#xff0c;进程不但包括应用程序的指令流&#xff0c;也包括运…

keras中mean square error均方误差理解

机器学习中&#xff0c;针对不同的问题选用不同的损失函数非常重要&#xff0c;而均方误差就是最基本&#xff0c;也是在解决回归问题时最常用的损失函数。本文就keras模块均方误差的计算梳理了一些细节。 首先看一下均方误差的数学定义 : 均方误差是预测向量与真实向量差值的…

Java并发Semaphore信号量的学习

public class MyThreadTest {private final static Semaphore semaphore new Semaphore(2);// 设置2个车位public static void main(String[] args) {System.out.println("start");p(semaphore, true, 1);p(semaphore, false, 2);p(semaphore, false, 3);p(semaphor…

快速理解binary cross entropy 二元交叉熵

Binary cross entropy 二元交叉熵是二分类问题中常用的一个Loss损失函数&#xff0c;在常见的机器学习模块中都有实现。本文就二元交叉熵这个损失函数的原理&#xff0c;简单地进行解释。 首先是二元交叉熵的公式 : Loss−1N∑i1Nyi⋅log⁡(p(yi))(1−yi)⋅log(1−p(yi))Loss …

Docker搭建自己的GitLab

Docker搭建自己的GitLab docker 介绍 **GitLab: ** GitLab 是一个用于仓库管理系统的开源项目&#xff0c;使用Git作为代码管理工具&#xff0c;并在此基础上搭建起来的web服务 **Docker: ** Docker 是一个开源的应用容器引擎&#xff0c;让开发者可以打包他们的应用以及依赖…

kolla-ansible-----常用命令

常用命令 kolla-ansible prechecks -i multinode #部署前环境检测 kolla-genpwd #生成/etc/kolla/password.yml密码配置文件 kolla-ansible post-deploy -i multinode #生成认证文件 kolla-ansible mariadb_recovery -i /opt/mutinode #恢复数据库 kolla-ansible -i multi…