是JDK还是JRE的Java核心API部分?

时间:2019-06-18 11:59:29

标签: java java-8 java-api

我想知道官方Java核心API是JDK还是JRE的一部分。

根据对Java的理解,我认为核心API应该是JRE的一部分,因为该应用程序应该可以在没有JDK提供的附加功能的情况下运行。

我还在网上找到一些信息,说JDK的3个基本组件是

  1. Java编译器
  2. JVM
  3. Java API


(由于JRE是JVM的实现,因此Java API是属于JRE还是JDK?)
编辑:实际问题:JRE中包含Java API吗?

2 个答案:

答案 0 :(得分:6)

您的事实有点不准确。

  

我还在网络上找到了一些信息,这些信息说JDK的3个基本组件是:1. Java编译器,2. JVM,3. Java API。

这不是一个好的总结。当然,JDK中还有其他事情。

  

由于JRE是JVM的实现

实际上,JRE 包括 JVM的实现。它还包括核心Java API和其他一些东西。

正如Holger指出的那样,JDK由JRE以及一些其他Java开发工具组成。或者像他简洁地说的那样:

  

“ JDK = JRE +开发工具”


所以回答您的问题:

  

Java API属于JRE还是JDK?

JRE发行版或JDK发行版中均包含 Java API,但是在此上下文中,短语“属于”没有太大的意义。


(现在人们可以辩论JDK是否“包含” JRE,以及JRE是否“包含” Java API。但是说实话,这是没有意义的辩论。真正重要的是Java API在两种分布中都是 present

此外,由于Java不再为Oracle或OpenJDK Java提供JRE发行版,因此这在Java 11中基本上没有意义。现在仅是JDK。)

答案 1 :(得分:1)

一张图片值一千字。

Java Conceptual Diagram

但是,请注意,上图反映了JDK 8的结构,对于以后的版本则有所不同。