JDK的全称是Java SE Development Kit, 即Java标准开发包,是Sun公司提供的一套用于开发Java应用程序的开发包, 它提供了编译、运行Java查询所需的各种工具和资源,包括ava编译器、Java运行时环境以及常用的 Java类库等。

这里又涉及一个概念: Java运行时环境,已它的全称是Java Runntime Environment,,因此也被称为JRE,它是运行Java查询的必需条件。

1.JRE 和JVM的关系

JVM是运行Java 程序的核心虚拟机,而运行Java程序不仅需要核心虚拟机,还需要其他的类加载器、 字节码校验器以及大量的基础类库。JRE除了包含JVM之外,还包含运行Java程序的其他环境支持。

2.JDK 和 JRE 的关系

如果需要安装Java程序,则应该选择安装JDK;当然安装了JDK之后,就包含了 JRE, 也可以运行 Java程序。

但如果只是运行Java程序,则需要在计算机上安装JRE,仅安装JVM是不够的。实际上, Oracle公司网站上提供的就是JRE 的下载,它并不提供单独的JVM下载。

JDK、JVM、JRE的关系图,如图所示

3.JDK安装路径下文件夹说明

(1)bin:该路径下存放了JDK的各种工具命令,常用的 javac、 java等命令就存放在该路径下。在jdk的 bin路径下,执行“javac A.java”,将Java源码文件A编译为字节码文件A.class,再执行“javaA”运行A。注意:java命令后的参数是 Java类名,而不是字节码文件的文件名,也不是Java源文件名。

(2)db:该路径是安装 Java 数据库的路径。

(3)include:—些平台特定的头文件。

(4)jre:运行 Java程序所必须的 JRE环境。

(5)lib:存放的是JDK工具命令的实际执行程序。用于编译Java程序所使用的java.exe命令,是使用Java 编写的,这个类就是libo路径下 tools.jar文件中 sun toolsVjavac路径下的Main 类。JDK的bin路径下的javac.exe命令实际上仅仅是包装了这个Java类。不仅如此,bin 路径下的绝大部分命令都是包装了tools.jar文件的工具类。

(6)javaf-src.zip:该压缩文件里存放的是JavaFX所有核心类库的源代码。

(7)src.zip:该压缩文件存放的是Java所有核心类库的源代码。

(8)README 和 LICENSE:说明性文档。

JDK、JVM和JRE三者间的关系,及JDK安装路径下的文件夹说明的更多相关文章

  1. JDK与JRE、JVM三者间的关系及JDK的安装部署

    JDK与JRE.JVM三者间的关系及JDK的安装部署 一.JDK与JRE.JVM三者间的关系 JDK(Java Development Kit)是针对Java开发员的产品,是整个Java的核心,包括了 ...

  2. pg_hba.conf、pool_hba.conf 以及 pool_passwd 三者间的关系

    pg_hba.conf.pool_hba.conf 以及 pool_passwd 三者间的关系: 1.pg_hba.conf.pool_hba.conf 以及 pool_passwd 三者关系 pg_ ...

  3. JDK、JRE、JVM三者间的关系

    JDK(Java Development Kit)是针对Java开发员的产品,是整个Java的核心,包括了Java运行环境JRE.Java工具和Java基础类库.Java Runtime Enviro ...

  4. JDK、JRE、JVM三者间的关系(待更新...)

    JDK(Java Development Kit) JDK中包含JRE,在JDK的安装目录下有一个名为jre的目录,里面有两个文件夹bin和lib,在这里可以认为bin里的就是jvm,lib中则是jv ...

  5. 连接池、数据源、JNDI三者间的关系及用法

    连接池:连接池是由容器(比如Tomcat)提供的,用来管理池中的连接对象.连接池自动分配连接对象并对闲置的连接进行回收.连接池中的连接对象是由数据源(DataSource)创建的.连接池(Connec ...

  6. JDK安装路径下的JRE与独立安装的JRE区别

    在JDK安装目录下的子文件下,已经默认安装了一个jre.且与独立安装的JRE6所包含的文件几乎完全一样. JDK里面内置的JRE和独立的JRE是有一点差别的: 在JDK安装文件中包含了一个完整的独立版 ...

  7. 为何在JDK安装路径下存在两个JRE?

    "两个jre"和"三个lib"的功能简单扼要的解释 安装JDK后,Java目录下有jdk和jre两个文件夹,但jdk下还有一个jre文件夹,而且这个jre比前面 ...

  8. [原创]关于在VS解决方案下使用文件夹管理多个项目层次关系的说明

    由于所创建的应用项目或类库项目较多,于是将这些类库放到一个文件夹下.在VS解决方案下确实能看到一个文件夹下多个类库项目这种层次关系.如下图所示: 但打开“我的电脑”,看到的只有类库,并未看到维护层次关 ...

  9. Activity、Window和View三者间的关系有一定的见解

    一.简述如何将Activity展现在手机上 Tips: Activity本身是没办法处理显示什么控件(view)的,是通过PhoneWindow进行显示的 换句话说:activity就是在造Phone ...

随机推荐

  1. node环境变量配置

    1.Node.js 官方网站下载:https://nodejs.org/en/ 2.打开安装,傻瓜式下一步即可,然后配置环境变量 3.因为在执行例如npm install webpack -g等命令全 ...

  2. android 调用相机拍照及相册

    调用系统相机拍照: private Button btnDyxj; private ImageView img1; private File tempFile; btnDyxj = (Button) ...

  3. 阿里云esc 登录时的相关提示

    1. 如果该ecs 未绑定密钥对,可以通过常规的用户名密码登录 2. 如果该 ecs 绑定了密钥对,则需要通过私钥进行登录 3. 如果使用 比如 securityCRT 登录时报 " A p ...

  4. [特征工程] GBDT

  5. mysql中索引,触发器,事务,存储引擎的理解

    网址:http://blog.51cto.com/760470897/1790460

  6. Redis集群环境各节点无法互相发现与Hash槽分配异常 CLUSTERDOWN Hash slot not served的解决方式

    总结/朱季谦 在搭建Redis5.x版本的集群环境曾出现各节点无法互相发现与Hash槽分配异常 CLUSTERDOWN Hash slot not served的情况,故而把解决方式记录下来. 在以下 ...

  7. 学习整理--vue篇(1)

    vue学习 vue指令 模板指令: v-model:绑定data数据实现数据双向绑定 v-html:绑定模板内容,可书写标签 v-text:绑定数据实现单向绑定 可缩写为{{}} 支持逻辑运算 可结合 ...

  8. Spring Cloud Eureka源码分析之三级缓存的设计原理及源码分析

    Eureka Server 为了提供响应效率,提供了两层的缓存结构,将 Eureka Client 所需要的注册信息,直接存储在缓存结构中,实现原理如下图所示. 第一层缓存:readOnlyCache ...

  9. 12.16 Java继承

    首先 :继承,指一个对象直接使用另一对象的属性和方法. 继承的格式: public class 子类名 entends 父类名{}   /* 表示前面的子类继承父类 */ 例:public class ...

  10. [BUUCTF]REVERSE——[BJDCTF 2nd]guessgame

    [BJDCTF 2nd]guessgame 附件 步骤: 例行查壳儿,64位程序,没有壳儿 64位ida载入,习惯性的检索程序里的字符串,看到了一串类似flag的字符串,拿去提交,成功 BJD{S1m ...