Java ядро ​​API часть JDK или JRE? - PullRequest
0 голосов
/ 18 июня 2019

Я хочу знать, является ли официальный API ядра Java частью JDK или JRE.

В соответствии с моим пониманием Java, я думаю, что базовый API должен быть частью JRE, поскольку приложение должно быть работоспособным без дополнений, предоставляемых JDK.

В Интернете я также нашел некоторую информацию о том, что 3 основных компонента JDK:

  1. Java Compiler
  2. 1010 * JVM *
  3. Java API


(Поскольку JRE является реализацией JVM, относится ли API Java к JRE или JDK?)
Изменить: актуальный вопрос: Java API включен в JRE?

Ответы [ 2 ]

6 голосов
/ 18 июня 2019

Ваши факты немного неточны.

В Интернете я также нашел некоторую информацию, в которой говорится, что 3 основных компонента JDK: 1. Компилятор Java, 2. JVM, 3. JavaAPI.

Это не очень хорошее резюме.В JDK, безусловно, есть и другие вещи.

Поскольку JRE является реализацией JVM

На самом деле JRE включает реализация JVM.Кроме того, он включает в себя основные API-интерфейсы Java и некоторые другие вещи.

Как отмечает Хольгер, JDK состоит из JRE и некоторых дополнительных инструментов разработки Java.Или, как он кратко выразился:

"JDK = JRE + инструменты разработки"


Итак, чтобы ответить на ваш вопрос:

API Java принадлежит JRE или JDK?

API Java включены в дистрибутив JRE или JDK, но фраза "принадлежать "не имеет большого значения в этом контексте.


(Теперь можно обсудить, содержит ли JDK" JRE "(или нет), и содержит ли JRE" API-интерфейсы Java ". Но, честно говоря, это бессмысленно дебаты. что действительно важно, что API-интерфейсы Java являются настоящее в обоих видах распределения.

1040 * Кроме того, это, по существу, спорно в Java 11, т.к.Oracle больше не предоставляет дистрибутивы JRE для Oracle или OpenJDK Java. Теперь это только JDK.)
1 голос
/ 18 июня 2019

Изображение стоит тысячи слов.

Java Conceptual Diagram

Тем не менее, обратите внимание, что приведенная выше диаграмма отражает структуру JDK 8 и последующих выпусковэто другое.

...