一.什么是JDK?

以度娘上的解释:JDK(Java Development Kit)是SUN公司(09年被oracle公司收购现在属于oracle公司)针对Java开发人员发布的免费软件开发工具包 (SDK,Software Development Kit)。JDK是整个Java的核心,包括了Java运行环境、Java工具和Java基础类库。

说白了JDK就是:java开发所需的工具包,是程序员使用java语言编写java程序所需的开发工具包,是提供给程序员使用的。JDK包含了JRE,同时还包含了编译java源码的编译器javac,还包含了很多java程序调试和分析的工具:jconsole,jvisualvm等工具软件,还包含了java程序编写所需的文档和demo例子程序。
如果你需要运行java程序,只需安装JRE就可以了。如果你需要编写java程序,需要安装JDK。

二.什么是OpenJDK?

历史上的原因是,OpenJDK是JDK的开放源码版本,也就是在09年的时候Sun公司由于各种原因被Oracle收购,即将被收购时Sun公司将JDK开源于是就出现了OpenJDK,open就是开发开源的意思,开放JDK源代码可供让全世界IT开发者学习。

三.JDK与OpenJDK主要区别是什么?

区别在技术逻辑概念的东西太多大家可以取百度上查查,反正很多。

我这就是讲比较通俗易懂的区别:现在JDK归属于Oracle公司,所以每年(每年可能不太准确应该是每次)Oracle公司发布新版的JDK时会发布两个版本:一个是加了一些自己Oracle公司的商业技术的JDK (就类似在一个纯净的软件上加了一些自己的插件等) ,另一个是OpenJDK(也就是一般没有加任何其他插件的纯净版的JDK)。即便是这样JDK与OpenJDK源代码差距也微乎其微,几乎也可以认为是一模一样。

Oracle发布OpenJDK后,全球各大公司比如国内BAT大厂,国外的IBM,FaceBook等各种互联网大厂,这些公司获取到OpenJDK后就可以加上自己公司的一些商业技术插件然后就形成了自己公司的JDK了。打个比方类似于手机系统中谷歌开源的安卓系统,谷歌每发布更新一次安卓版本,各大手机厂家在基于安卓系统上开发出属于自己公司的系统,例如:小米的MIUI系统,VIVO,OPPO,华为(华为现在用自己鸿蒙了,应该不能算安卓阵营了)等都有自己公司开发出来的安卓系统,但是这些系统前提都是基于谷歌的安卓系统开发而来的。

现在我们学Java的一般默认用的JDK是Oracle公司版的JDK(毕竟Java现在又Oracle管)

END 到这里你应该大致懂JDK与OpenJDK区别了吧!

JDK与OpenJDK区别(简略通俗易懂)相关推荐

  1. Oracle JDK 和 OpenJDK 有什么区别?

    OpenJDK是Sun在2006年末把Java开源而形成的项目,这里的"开源 "是通常意义上的源码开放形式,即源码是可被复用的,例如IcedTea.UltraViolet都是从Op ...

  2. 面试官 | Oracle JDK 和 OpenJDK 有什么区别?

    作者 | petercao 来源 | urlify.cn/yAn6ru OpenJDK是Sun在2006年末把Java开源而形成的项目,这里的"开源"是通常意义上的源码开放形式,即 ...

  3. Java常见面试题:Oracle JDK 和 OpenJDK 的区别?

    Oracle JDK 和 OpenJDK 的区别? 可能在看这个问题之前很多人和我一样并没有接触和使用过 OpenJDK.那么Oracle和OpenJDK之间是否存在重大差异?下面我通过收集到的一些资 ...

  4. 不过如此! jdk 的安装/配置环境变量 jdk与openjdk 的区别 jdk 官网下载所需账号密码 虚拟机基础环境配置 超详细安装教程/介绍 Ubuntu18.04 SDN软件定义网络实验

    前情提要:我们已经完成了虚拟机的联网.ssh + vmtools + net-tools + vim的基础环境配置.接下来将进行jdk的安装与环境变量的配置,并介绍jdk与openjdk的区别,分享一 ...

  5. java基础总结(二十)--Oracle/Sun JDK与OpenJDK的区别和联系

    来自:https://blog.csdn.net/wangjianno2/article/details/52015442与https://www.cnblogs.com/zengkefu/p/563 ...

  6. Oracle JDK和 OpenJDK 之间的区别

    1. 简介 在本文中,我们将探讨Oracle Java Development Kit和OpenJDK之间的差异.我们先快速浏览一下,然后进行比较.之后,我们将看到其他JDK实现的列表. 2. Ora ...

  7. JDK和OpenJDK的区别

    关于JDK和OpenJDK的区别,可以归纳为以下几点: 授权协议的不同: openjdk采用GPL V2协议放出,而JDK则采用JRL放出.两者协议虽然都是开放源代码的,但是在使用上的不同在于GPL ...

  8. 这些java名词你都了解嘛?JDK、openJDK、java EE、jre、jvm、jep、jar、jmod

    前言 在学习java的过程中,我们经常会遇到各种各样的缩写名词,虽然里面有一些不是必须了解的,不过作为java的学习者,我认为下面这些缩写词是很有必要知道的,不然不论是听别人交流还是看文档,都可能一头 ...

  9. jdk、openjdk、jre、jvm、jep、jar、jmod

    jdk Java Development Kit(java开发工具包的缩写),这个是每一个java初学者都应该知道的东西,毕竟没它就开发.运行不了.里面包含jre和一些开发.分析用的小工具(例如jar ...

最新文章

  1. string转换成CString
  2. Intel汇编语言程序设计学习-第一章 基本概念
  3. 【Servlet】总结 JSP的四大域对象、Servlet的四个作用域:pageContext、request、session、application
  4. 人类历史上有过哪些令人毛骨悚然的实验?
  5. 汇编语言:实验10 根据材料编程—2.解决除法溢出的问题
  6. Spring配置中的bean直接引用其它bean的属性值
  7. Takeown 实现解析
  8. C语言俄罗斯方块代码
  9. 银行转账和分布式事务(转)
  10. c++聊天机器人——简单版
  11. 计算机操作技能竞赛系列方案,2019 年上学期计算机文字录入操作技能竞赛
  12. MSN聊天记录备份和还原方法
  13. Ceph RBD 使用详细说明
  14. Win10应用商店提示0x80070422解决方法
  15. mysql 分离和附加数据库_分离数据库和附加数据库有什么区别
  16. Filter过滤器的简单介绍与使用
  17. linux 设置自动退出时间,linux配置超时不操作自动退出登录TMOUT
  18. 开发人员面试62到经典题
  19. 云计算运维:运维人员常用到的11款服务器监控工具
  20. Java+MySQL基于SSM的在线论坛交流系统

热门文章

  1. 云计算是IT行业的集体炒作还是可以触摸的未来?
  2. chkconfig命令会立即生效吗_chkconfig 命令用法
  3. 教育src漏洞挖掘-2022-白帽必挖出教程
  4. 用代码实现一个简单计算器
  5. [漏洞扫描] Nessus,OpenVAS 漏洞扫描工具进行多维度的对比分析
  6. zbrush2019稳定版+超多笔刷合集
  7. Python Twisted
  8. React尚硅谷张天禹笔记(更新中......)
  9. 1产品经理技术——岗位认识
  10. oracle手机号码正则表达式,oracle正则表达式语法介绍及实现手机号码匹配方法