jdk1.8.232和jdk1.8.282区别

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了jdk1.8.232和jdk1.8.282区别相关的知识,希望对你有一定的参考价值。

参考技术A 泛型
2. 自动装箱/拆箱
3. for-each
参考技术B 1) Java与JDK的区别与关系

这个应该是看问题的角度不同,在用户眼中,Java是Java应用,而在程序员眼中,JDK是Java开发工具,所以Java等价于JDK。

(2) JDK8与JDK1.8的区别与关系

JDK8或者JDK1.8是由于自从JDK1.5/JDK5命名方式改变后遗留的新旧命令方式问题,所以JDK8或者JDK1.8也是同一个东西。

(3) JDK与J2SE的区别与关系

Java有3个版本:J2SE(Java Platform,Standard Edition)、J2EE(Java Platform,Enterprise Edition)、J2ME(Java Platform,Micro Edition),所以J2SE是3个版本中的其中一个,即标准版本。

现在最新的Java版本就是JDK16,下载链接如下,

https://www.oracle.com/java/technologies/javase-downloads.html#JDK16

但是你可以看到他写了这么一行,意思是如果是个人用途或者开发用途,JDK是免费使用的,但是如果是其他的用途,以前免费的JDK license就不再起作用了,说白了,就是如果是商业用途使用最新的JDK,现在不是免费了,

The new license permits certain uses, such as personal use and development use, at no cost -- but other uses authorized under prior Oracle JDK licenses may no longer be available.
Oracle收购了SUN,他的这种收费策略和标准,自然影响到了mysql、JDK等技术和产品。你可以随意下载,还可以使用,但是一旦用在了商业领域,以赚钱为目的,你就得注意了,我可以暂时不向你收费,但是等你做大做强了,我就能给你发律师函了,你得赔我的license,甚至能让你赔到倒闭,你说凭什么?就是因为你用了我的产品,我的产品,我说了算。是不是感受到了美帝国主义的色彩?

其实这个也是为什么我们要推动国产化的最重要原因,掐脖子的问题,未雨绸缪,必须解决。

从如下归档链接,我们能找到JDK各版本的地图,

https://www.oracle.com/java/technologies/oracle-java-archive-downloads.html

注意到JDK8这提到了两个8u211和8u202,这其实就是个分水岭,JDK8 8u202及以下是免费的,从JDK8 8u211及以上,就都是收费了,因此我们下载使用的时候,就得有所针对了,如果是商业用途,不要侥幸。

这个最新的免费版本号,其实包括了两个,8u201和8u202,这个就是JDK版本号的命名问题了。从2014年10月发布Java SE 7 Update 71(Java SE 7u71)开始,Oracle在发布Oracle JDK关键补丁更新(CPUs:Critical Patch Updates)的同时一般会发布相应的补丁集更新(PSUs:Patch Set Updates)。其中Oracle JDK关键补丁更新(CPUs)包含安全漏洞修复和重要漏洞修复,Oracle强烈建议所有Oracle JDK用户及时升级到最新的CPU版本,Oracle JDK 关键补丁更新(CPUs)版本号采用奇数编号。Oracle JDK补丁集更新(PSUs)包含相应CPUs中的所有修复以及其他非重要修复,仅当受到Oracle JDK关键补丁更新(CPUs)版本之外的其他漏洞的影响时才应当使用相应的补丁集更新 (PSUs),Oracle JDK补丁集更新(PSUs)版本号采用偶数编号。因此,一般情况下我们只要下载奇数编号的最新版本更新就行了。

JDK和Java SDK的区别

【中文标题】JDK和Java SDK的区别【英文标题】:Differences between JDK and Java SDK 【发布时间】:2010-09-15 01:02:08 【问题描述】:

这两个术语之间有什么实质性区别吗?我了解 JDK 代表 Java Development Kit,它是 SDK(软件开发工具包)的一个子集。但是指定Java SDK,应该和JDK一样。

【问题讨论】:

【参考方案1】:

JDK是你需要write a java program的。

JRE 是您需要run a java program 所需要的。

由于JDKcontainsJRE可以下载JDK来编写和运行java程序。

JRE 包含 JVM,只要 JVM 安装在该操作系统上,Java 程序就可以在任何平台上运行(无需为其他平台重新编写或重新编译代码)。这就是 Java 广为人知的原因

Write Once(compile once) run anywhere.(WORA)

【讨论】:

【参考方案2】:

JDK 是 Java 的 SDK。

SDK 代表“软件开发工具包”,这是一种开发人员工具,可让人们更轻松、更有效、更高效地编写代码。 SDK 适用于各种语言。它们提供了大量的 API(应用程序编程接口),使程序员的工作变得轻松。

Java 开发工具包称为 JDK,即 Java 开发工具包。 所以说 SDK for Java 实际上是指 JDK。

假设您是 Java 新手,您会遇到另一个术语 - JRE,Java 运行时环境的首字母缩写。 当您尝试运行用 Java 编写的软件程序时,您需要 JRE。

Java 是一种独立于平台的语言。 JRE 运行 JVM,即 Java 虚拟机,它使您能够在 JVM 可用的任何平台上运行软件。

【讨论】:

请说明 JRE 在您的图表中的位置? JRE 很好地包含在 JDK 中,或者它可以是独立的,具体取决于您在做什么。它是运行时,因此当您构建应用程序时,它位于 JDK 中,但当您仅运行应用程序时,它是独立的,在这种情况下,此图没有多大意义。 你确定jdk是java的sdk吗?考虑到 java se,这可能是真的,但对于 java ee 和 java me,我只看到了 Oracle 提供的 SDK。那么,你真的确定吗? 图片在跟我说话 :)【参考方案3】:

取自 Java EE 6 SDK Installer,显示 SDK 6 除了 JDK 还包含什么:

【讨论】:

【参考方案4】:

是的,SDK 和 JDK 之间是有区别的。 大多数人忘记了Java平台不仅用于开发Java语言程序。 JVM 还支持其他一些语言。 因此,明确地说,SDK 是通用的软件捆绑包,支持使用各种语言(如 Clojure、Groovy、Scala、JRuby 等)创建软件。 JDK 是用 Java 语言开发软件的特定捆绑包,包含所有 Java 标准 API。 (我希望我解释得很好,因为我实际上不会说英语)

【讨论】:

【参考方案5】:

没有区别。

在 Sun 的营销部门对“tm”和术语感到疯狂之前,Java 软件开发工具包 (Java SDK) 曾经被称为 Java 开发工具包 (JDK)。出于政治原因和理智,他们将有意义的名称 (jdk) 和版本 (1.2 / 1.3 / 1.4 1.5 / 1.6) 称为“工程”术语。营销术语是“Java2 平台”(又名 jdk 1.2 到 1.4)或 Java5(又名 jdk 1.5)或 Java6(又名 jdk1.6)。想想就头疼。

【讨论】:

【参考方案6】:

来自wikipedia entry:

JDK 是一般意义上的软件开发工具包 (SDK) 的一个子集。在最近发布的 Java SE、EE 和 ME 的描述中,Sun 承认根据他们的术语,JDK 构成了负责编写和运行 Java 程序的 SDK 的子集。 SDK 的其余部分由额外的软件组成,例如应用程序服务器、调试器和文档。

“额外软件”似乎是 Glassfish、MySQL 和 NetBeans。 This page 比较了您可以为 Java EE SDK 获得的各种包。

【讨论】:

SDK 是否在其包 - JDK“包”中包含(!)? JRE 包含在 JDK 中,是的。 JDK是一个软件开发工具包(SDK)。【参考方案7】:

我认为 jdk 具有可以与特定框架一起使用的某些功能。好吧,把它称为 SDK。

像 Android 或 Blackberry 一样,它们都使用 java 及其框架。

【讨论】:

【参考方案8】:

JDK 附带了一组用于开发和运行 Java 程序的工具

它们包括:

    appletviewer(用于查看 Java 小程序)

    javac(Java 编译器)

    java(Java 解释器)

    javap(Java 反汇编程序)

    javah(用于 C 头文件)

    javadoc(用于创建 HTML 文档)

    jdb(Java 调试器)

而 SDK 附带许多其他工具,包括 JDK 中可用的工具。

http://parvindersingh.webs.com/apps/forums/topics/show/8853125-solved-java-difference-between-jdk-and-sdk-

【讨论】:

【参考方案9】:

JDK(Java 开发工具包)是一个 SDK(软件开发工具包)。

它用于在 Java 上构建软件/应用程序 当然,它还包括执行该软件的 JRE(Java 运行时版)。 如果您只想执行 Java 应用程序,只需下载 JRE。

顺便说一句,Java EE(企业版)包含“带有方法(函数)”的类包库,用于为 WEB 环境和 Java ME(微型版)构建移动设备的应用程序。如果您对它(Java ME)感兴趣,我建议您看看 Google 的 Android DevKit 和 API。

看看这里:它会解释更多.. http://www.oracle.com/technetwork/java/archive-139210.html

【讨论】:

【参考方案10】:

此问题的最佳示例,SDK - 软件开发工具包 - 例如:Netbeans JDK - Java 开发工具包。(这是 Java 编译器)。没有JDK,我们无法在SDK中运行java程序。

【讨论】:

【参考方案11】:

在我看来,Java 中的 JDK 和 SDK 没有区别。我们可以在它们中找到所有的开发工具和设施。只是sun提供的一个别名。

【讨论】:

【参考方案12】:

有两种产品JavaSE 和JavaEE。 EE是允许Web应用程序开发和运行的Web应用程序/企业版。 SE 是纯 Java 产品,其中没有 EE 细节,但它是 EE 的一个子集。 SE 有两种类型,JDK 和 JRE。

有一个很大的区别可能并不明显,我不确定它是否适用于所有操作系统,但在 Windows 下,JRE 没有服务器 HotSpot JVM,只有客户端一个,JDK 两者都有,而且据我所知,所有其他操作系统都有 JDK 和 JRE。 真正的区别是JDK包含Java编译器,即JDK允许您从源代码编译和运行Java,而JRE只允许运行Java字节码,即已经编译的Source。 是的,较新的版本捆绑了许多额外的组件,例如 NetBeans 编辑器环境和 Java 内存数据库 (derby/cloudscape),但这些都是可选的。

【讨论】:

【参考方案13】:

Sun 只是喜欢无缘无故地更改事物的名称。查看 SunOS/Solaris 的三种不同编号方案,或 Java 的两种编号方案。是 Java 1.6、Java 2 版本 6 还是 Java 6?

【讨论】:

【参考方案14】:

JDK 和 Java SDK 之间没有区别。两者的意思是一样的。我认为从 JDK 转换到 Java SDK 是 Sun 的公关决定。我认为它现在回到 JDK。

【讨论】:

【参考方案15】:

我最初的猜测是 Java SDK 用于构建 JVM,而 JDK 用于构建应用程序for JVM。

编辑:虽然目前这看起来是不正确的。 Sun 正在对 JVM 进行开源(也许他们现在已经完成了),所以如果我的答案确实正确,我不会太惊讶……但目前,SDK 和 JDK 是一回事。

【讨论】:

抱歉,构建 JVM 是什么意思? Java 应用程序在 Java 虚拟机中运行。 JRE 的一部分正在向公众开放,因此 Java SDK 将有助于人们为其平台构建 JRE。 抱歉,您从哪里得到这个声明(Java SDK 对人们为他们的平台构建 JRE 很有用)?我认为要么我不理解你,要么这不是 Java SDK 的目标。 Java SDK 由 JRE 和一些工具如 Javac、javap、javadoc ... 组成

以上是关于jdk1.8.232和jdk1.8.282区别的主要内容,如果未能解决你的问题,请参考以下文章

一文读懂JDK7,8,JD9的hashmap,hashtable,concurrenthashmap及他们的区别

JD爬虫综合案例

安装和使用JD-Eclipse插件

jd-eclipse反编译插件的在线安装和使用

JDK,JRE,JVM,JMM关系与区别

浏览器跨域问题