16.JRE和JDK

程序员在编写代码的时候其实是需要一些环境,例如我们之前写的HelloWorld。我们需要的东西有JVM、核心类库、开发工具。

1、JVM(Java Virtual Machine):Java虚拟机,真正运行Java程序的地方。没有虚拟机,代码都没地方运行。

2、核心类库:例如之前写的HelloWorld代码中,里面的System、out、println,每个单词都有其特定的含义,它们组合在一起就可以把小括号的内容直接展示出来。这些其实都是Java已经写好的东西,我们直接拿过来使用就行了。

3、开发工具:例如:javac 编译工具、java 运行工具、jdb 调试工具、jhat内存分析工具 ...

它们三个组成的整体,就叫JDK。JDK(Java Development Kit)称为Java开发工具包,包含了JRE和开发工具。

所以说简单理解程序员想要编写代码并且能成功运行,我们需要安装一个JDK就可以了。


除此之外,还有一种情况需要我们考虑,假设我现在将代码写完了,也编译完了,此时我需要将class文件交给别人运行,此时人家只需要运行class文件就行了,不需要开发了,但此时别人就不需要再安装一个完整的JDK了,因为在JDK里面,有些东西我们是用不到的,如果强行安装,就会占用硬盘空间。

但我又需要运行代码,那应该安装什么呢?虚拟机、核心类库肯定都是需要的,但是在运行的时候有一部分开发工具就不需要了。例如代码已经写好了,已经不需要javac编译工具;并且此时代码别人写好了,也已经没有问题了,此时也不再需要调试了,jdb工具也用不到了。

所以说java会在JVM、核心类库还有在运行的时候所用到的一些工具单独的抽取出来,又组成了一个 JRE。当我们以后只需要运行代码,不需要编写了,安装一个JRE就可以了。JRE比较短小,不会占用过多的硬盘空间。

JRE(Java Runtime Environment),Java运行环境,包含了JVM和Java的核心类库(Java API,即Java已经写好的一些东西,我们直接拿过来用就行了)。

总结:JDK包含了JRE,JRE包含了JVM。

相关推荐
懒大王爱吃狼27 分钟前
Python教程:python枚举类定义和使用
开发语言·前端·javascript·python·python基础·python编程·python书籍
秃头佛爷1 小时前
Python学习大纲总结及注意事项
开发语言·python·学习
阿伟*rui1 小时前
配置管理,雪崩问题分析,sentinel的使用
java·spring boot·sentinel
待磨的钝刨2 小时前
【格式化查看JSON文件】coco的json文件内容都在一行如何按照json格式查看
开发语言·javascript·json
XiaoLeisj3 小时前
【JavaEE初阶 — 多线程】单例模式 & 指令重排序问题
java·开发语言·java-ee
paopaokaka_luck3 小时前
【360】基于springboot的志愿服务管理系统
java·spring boot·后端·spring·毕业设计
dayouziei3 小时前
java的类加载机制的学习
java·学习
励志成为嵌入式工程师4 小时前
c语言简单编程练习9
c语言·开发语言·算法·vim
捕鲸叉5 小时前
创建线程时传递参数给线程
开发语言·c++·算法
A charmer5 小时前
【C++】vector 类深度解析:探索动态数组的奥秘
开发语言·c++·算法