这两个术语之间有什么实质性区别吗?我了解 JDK 代表 Java Development Kit,它是 SDK(软件开发工具包)的子集。但是指定Java SDK,应该和JDK一样。
15 回答
是的,SDK 和 JDK 之间是有区别的。大多数人忘记了Java平台不仅用于开发Java语言程序。JVM 还支持一些其他语言。因此,明确地说,SDK 是通用的软件捆绑包,支持使用各种语言(如 Clojure、Groovy、Scala、JRuby 等)创建软件。JDK 是用 Java 语言开发软件的特定捆绑包,包含所有 Java 标准 API。(我希望我解释得很好,因为我实际上不会说英语)
JDK 是 Java 的 SDK。
SDK 代表“软件开发工具包”,一种开发人员工具,使人们能够更轻松、更有效、更高效地编写代码。SDK 适用于各种语言。它们提供了大量的 API(应用程序编程接口),使程序员的工作变得轻松。
Java 的 SDK 称为 JDK,即 Java 开发工具包。因此,通过说 SDK for Java,您实际上是指 JDK。
假设您是 Java 新手,您会遇到另一个术语 - JRE,Java Runtime Environment 的首字母缩写。当您尝试运行用 Java 编写的软件程序时,您需要 JRE。
Java 是一种独立于平台的语言。JRE 运行 JVM,即 Java 虚拟机,使您能够在 JVM 可用的任何平台上运行软件。
取自 Java EE 6 SDK Installer,显示了 SDK 6 除了 JDK 还包含哪些内容:
孙只是喜欢无缘无故地更改事物的名称。查看 SunOS/Solaris 的三种不同编号方案,或 Java 的两种编号方案。是 Java 1.6、Java 2 版本 6 还是 Java 6?
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
JDK 附带了一组用于开发和运行 Java 程序的工具,
它们包括:
appletviewer(用于查看 Java 小程序)
javac (Java 编译器)
java(Java 解释器)
javap(Java反汇编程序)
javah(用于 C 头文件)
javadoc(用于创建 HTML 文档)
jdb (Java 调试器)
然而,SDK 附带了许多其他工具,包括 JDK 中可用的工具。
JDK 和 Java SDK 之间没有区别。两者的意思是一样的。我认为从 JDK 转换到 Java SDK 是 Sun 的公关决定。我认为它现在回到 JDK。
在我看来,Java 中的 JDK 和 SDK 没有区别。我们可以在它们中找到所有的开发工具和设施。它只是 sun 提供的别名。
这个问题的最佳示例,SDK - 软件开发工具包 - 例如:Netbeans JDK - Java 开发工具包。(这是 Java 编译器)。没有 JDK,我们无法在 SDK 中运行 java 程序。
没有区别。
Java 软件开发工具包 (Java SDK) 曾经被称为 Java 开发工具包 (JDK),在 Sun 的营销部门对“tm”和术语感到疯狂之前。出于政治原因和理智,他们将有意义的名称 (jdk) 和版本 (1.2 / 1.3 / 1.4 1.5 / 1.6) 称为“工程”术语。营销术语是“Java2 平台”(又名 jdk 1.2 到 1.4)或 Java5(又名 jdk 1.5)或 Java6(又名 jdk1.6)。光是想想就头疼。
我最初的猜测是 Java SDK 用于构建 JVM,而 JDK 用于构建 JVM 应用程序。
编辑:虽然目前这看起来不正确。Sun 正在对 JVM 进行开源(也许他们现在已经完成了),所以如果我的答案确实正确,我不会太惊讶……但目前,SDK 和 JDK 是一回事。
我认为 jdk 具有某些可以与特定框架一起使用的功能。好吧,将其作为一个整体称为 SDK。
像 Android 或 Blackberry 一样,它们都使用 java 及其框架。
JDK是您需要的
write a java program
。JRE是您需要的
run a java program
。由于JDK
contains
JRE 可以下载JDK 来编写和运行java 程序。JRE 包含JVM,只要 JVM 安装在该操作系统上,Java 程序就可以在任何平台上运行(无需为其他平台重新编写或重新编译代码)。这就是为什么 Java 被称为
Write Once(compile once) run anywhere.(WORA)
有两种产品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),但这些都是可选的。