JDK 和 JRE:它们之间的区别是什么?

news2024/11/15 7:41:18

JDK 和 JRE:它们之间的区别是什么?

  • 1、JRE(Java Runtime Environment)
    • 1.1 JRE的主要组成部分
    • 1.2 JRE的用途
  • 2、JDK(Java Development Kit)
    • 2.1 JDK的主要组成部分
    • 2.2 JDK的用途
  • 3、总结


💖The Begin💖点点关注,收藏不迷路💖

在Java的世界里,我们经常会听到两个术语:JDK(Java Development Kit)和JRE(Java Runtime Environment)。这两个组件在Java的生态环境中都扮演着重要的角色,但它们之间却有着明显的区别。

1、JRE(Java Runtime Environment)

JRE,即Java运行时环境,是Java程序运行的基础。你可以把它想象成一个舞台,Java程序就在这个舞台上表演。这个舞台提供了Java程序运行所需的基本元素,包括Java虚拟机(JVM)、Java核心类库和支持文件。

1.1 JRE的主要组成部分

  • Java虚拟机(JVM):它是Java程序运行的核心,负责将Java字节码转换成特定平台上的机器码并执行。
  • Java核心类库:它包含了Java语言的基础类和接口,这些类和接口是Java程序开发的基础。
  • 支持文件:包括一些必要的配置文件和字符编码映射文件等。

1.2 JRE的用途

  • 运行已经编译好的Java程序。
  • 在浏览器中运行Java Applet(不过现在的浏览器大多已经不再支持Java Applet了)。

2、JDK(Java Development Kit)

JDK,即Java开发工具包,是Java程序员进行Java程序开发的利器。它包含了JRE的所有内容,同时还提供了编译器(javac)和其他一些工具(如javadoc、jdb等),用于帮助开发者进行Java程序的开发、调试和文档编写。

2.1 JDK的主要组成部分

  • JRE:是的,JDK包含了JRE的所有内容,因为开发Java程序也需要一个运行环境。
  • 编译器(javac):用于将Java源代码(.java文件)编译成Java字节码(.class文件)。
  • 其他工具:如javadoc(用于生成Java文档),jdb(Java调试器)等。

2.2 JDK的用途

  • 开发Java程序。
  • 编译Java源代码。
  • 调试Java程序。
  • 编写Java文档等。

3、总结

1、JRE是运行Java程序的环境,而JDK是开发Java程序的环境。

2、JDK包含了JRE,同时还提供了开发者进行Java程序开发所需的各种工具。

3、如果你只是想要运行已经编译好的Java程序,那么只需要安装JRE就足够了;但如果你想要开发Java程序,那么就需要安装JDK了。

在这里插入图片描述


💖The End💖点点关注,收藏不迷路💖

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

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

相关文章

景联文科技以高质量多模态数据集赋能AI大模型,精准匹配提升模型性能

在人工智能的浪潮中,语料数据如同建筑的基石,其质量、规模和运用策略直接决定了AI模型的表现和应用的广泛性。 景联文科技在AI领域深耕多年,打磨了高质量多模态数据集,致力于为不同训练阶段的算法精准匹配高质量数据资源。 3000万…

AI 助力,歌词创作不再是难题

在音乐的世界里,歌词创作一直被视为一项充满挑战和灵感的艺术工作。然而,随着科技的飞速发展,AI 技术的出现正在悄然改变这一局面,让曾经困扰众多创作者的难题迎刃而解。 “妙笔生词智能写歌词软件(veve522&#xff0…

C语言中字符串(字符数组)中含有 0x00 (‘\0‘)引发的问题和解决办法

问题 在C语言中,字符串是以空字符(null character,即\0或0x00)结尾的字符数组。这种设计意味着字符串中的任何 0x00 字符都会被解释为字符串的结束。因此,如果字符串内部包含0x00字符,这实际上会将字符串分…

03、Kerberos安全认证之配置和访问Kerberos安全认证的Hadoop集群学习笔记

文章目录 前言一、Hadoop集群 Kerberos安全配置详细步骤1.1、安装libcrypto.so库1.2、创建HDFS服务用户1.3、配置各服务用户两两节点免密1.4、修改本地目录权限1.5、创建各服务Princial主体1.6、修改Hadoop配置文件1.6.1、配置core-site.xml1.6.2、配置hdfs-site.xml1.6.3、配置…

怎样在 PostgreSQL 中优化对时间序列数据的存储和查询策略?

🍅关注博主🎗️ 带你畅游技术世界,不错过每一次成长机会!📚领书:PostgreSQL 入门到精通.pdf 文章目录 《PostgreSQL 中时间序列数据的优化存储与查询策略》 《PostgreSQL 中时间序列数据的优化存储与查询策…

同步低通滤波结合全变分的一维时间序列降噪方法(MATLAB)

关于全变分模型,可以参考: 如何理解全变分(Total Variation,TV)模型?- imxtx的回答 - 知乎 https://www.zhihu.com/question/47162419/answer/2585330101 全变分去噪的基本思想是,如果图像的…

gin源码分析

一、高性能 使用sync.pool解决频繁创建的context对象,在百万并发的场景下能大大提供访问性能和减少GC // ServeHTTP conforms to the http.Handler interface. // 每次的http请求都会从sync.pool中获取context,用完之后归还到pool中 func (engine *Engin…

前端Canvas入门——Canvas的一些注意事项

如果我们使用标签的方式去创建Canvas,可以发现: 在我们创建画笔的时候,是不会有任何提示的。 这意味着,你需要记住所有API代码——这就很烦人。 那么,又没有一种优雅的、不失格调的方法? 那就是使用JS去创…

内网对抗-代理通讯篇不出网或不可达SockS全协议规则配置C2正反向上线解决方案

知识点 1、代理隧道篇-代理通讯网络不可达-正反向连接上线 2、代理隧道篇-代理通讯网络不可达-SockS代理配置 实现步骤 1、在被控机器上获取下一级网段 2、在被控及其上建立SockS节点 3、在工具上配置连接属性和规则触发演示案例-代理技术-正反向监听/SockS配置-网络不可达…

LabVIEW航空发动机试验器数据监测分析

1. 概述 为了适应航空发动机试验器的智能化发展,本文基于图形化编程工具LabVIEW为平台,结合航空发动机试验器原有的软硬件设备,设计开发了一套数据监测分析功能模块。主要阐述了数据监测分析功能设计中的设计思路和主要功能,以及…

Ubuntu使用Nginx部署uniapp打包的项目

使用uniapp导出web项目: 安装: sudo apt install nginx解压web.zip unzip web.zip移动到/var/www/html目录下: sudo cp -r ~/web/h5/ /var/www/html/重启Nginx: sudo service nginx restart浏览器访问:http://19…

Docker安装RabbitMQ(带web管理端)

1.拉取带web管理的镜像 可以拉取rabbitmq对应版本的web管理端,比如:rabbitmq:3.9.11-management,也可以直接拉取带web管理端的最新版本 rabbitmq:management. docker pull rabbitmq:3.9.11-management 注意:如果docker pull ra…

图像处理:使用 OpenCV-Python 卡通化你的图像(2)

一、说明 在图像处理领域,将图像卡通化是一种新趋势。人们使用不同的应用程序将他们的图像转换为卡通图像。如今,玩弄图像是许多人的爱好。人们通常会点击图片并添加滤镜或使用不同的东西自定义图像并将其发布到社交媒体上。但我们是程序员,…

基于重叠群稀疏的总变分信号降噪及在旋转机械故障诊断中的应用(MATLAB)

基于振动分析的故障诊断方法基本流程主要由以下五个步骤组成,分别是信号采集、信号处理、特征提取、状态识别与诊断结果。这五个步骤中信号采集与特征提取是故障诊断中最为重要的步骤,而故障微弱特征信息又是其中最难解决的问题。“故障微弱特征信息”站…

【Pro Controller连接PC】

软件下载连接 教学视频 安装64位驱动 按键修改

麦克风设计指南

前言: 本指南基于乐鑫的 ESP32-S3 系列语音开发板。 整机 mic 要求 麦克风电器性能推荐 麦克类型:全向型 MEMS 麦克风 SMD-4P,2.8x1.9mm MEMS 麦克风 顶视图 MEMS 麦克风 底视图 灵敏度 1 Pa 声压下模拟麦灵敏度不低于 -38 dBV,数字麦灵…

详细分析Sql Server中的declare基本知识

目录 前言1. 基本知识2. Demo3. 拓展Mysql4. 彩蛋 前言 实战探讨主要来源于触发器的Demo 1. 基本知识 DECLARE 语句用于声明变量 声明的变量可以用于存储临时数据,并在 SQL 查询中多次引用 声明变量:使用 DECLARE 语句声明一个或多个变量变量命名&a…

无人机之遥控器分类篇

一、传统遥控器 传统无人机遥控器一般包括开关键、遥控天线等基础装置。但是会随着无人机具体的应用和功能而开发不同的按键。它的信号稳定性远超对比其他遥控,而且遥控距离也更远(一般遥控范围在100米或以上)传统遥控器对于初学者来说比较难…

单体、分布式、微服务、Serverless及新兴部署模式分析

在数字化时代,软件架构的选择对于企业的技术战略至关重要。从单体架构到Serverless,再到服务网格和服务化模型,每一种架构模式都反映了特定时期内技术发展和业务需求的特点。本文将对这些架构模式的优缺点进行讨论,供大家参考。 部…

C++ | Leetcode C++题解之第231题2的幂

题目&#xff1a; 题解&#xff1a; class Solution { private:static constexpr int BIG 1 << 30;public:bool isPowerOfTwo(int n) {return n > 0 && BIG % n 0;} };