java - скачать - oracle jvm




В чем разница между JDK и JRE? (14)

JRE

JRE является аббревиатурой для Java Runtime Environment.It используется для обеспечения среды выполнения. Это реализация JVM.It физически существует. Она содержит набор библиотек + другие файлы, которые JVM использует во время выполнения.

JDK

JDK является акронимом для Java Development Kit. Он физически существует. Он содержит инструменты разработки JRE +.

Ссылка: - http://www.javatpoint.com/difference-between-jdk-jre-and-jvm

Обычно, когда вы только заботитесь о запуске программ Java в своем браузере или компьютере, вы будете устанавливать только JRE. Это все, что вам нужно. С другой стороны, если вы планируете выполнять некоторые Java-программы, вам также понадобится JDK.

В чем разница между JDK и JRE?
Каковы их роли и когда я должен использовать тот или иной?


JVM (виртуальная машина Java) - абстрактная машина. Это спецификация, предоставляющая среду выполнения, в которой может быть запущен java-байт-код.

JRE является аббревиатурой для Java Runtime Environment.It используется для обеспечения среды выполнения. Это реализация JVM.It физически существует. Она содержит набор библиотек + другие файлы, которые JVM использует во время выполнения

JDK является аббревиатурой для Java Development Kit. Он физически существует. Он содержит инструменты разработки JRE +


jdk необходим для компиляции кода и преобразования java-кода в байтовые коды, в то время как jre необходим для выполнения байтовых кодов.


В неспециалистских терминах: JDK - дед JRE - отец, а JVM - их сын. [т.е. JDK> JRE> JVM]

JDK = JRE + Средства разработки / отладки

JRE = JVM + классы Java-пакетов (например, util, math, lang, awt, swing и т. Д.) + Библиотеки времени исполнения.

JVM = система загрузчика классов + область данных времени выполнения + механизм выполнения.

Другими словами, если вы программист на Java, вам понадобится JDK в вашей системе, и этот пакет будет включать JRE и JVM, но если вы обычный пользователь, которому нравится играть в онлайн-игры, вам понадобится только JRE, и этот пакет не будет иметь JDK в нем.

JVM:

Виртуальная машина Java (JVM) - это виртуальная машина, на которой запущены байт-коды Java. JVM не понимает Java typo, поэтому вы компилируете свои * .java-файлы для получения файлов * .class, содержащих байт-коды, понятные JVM. Это также сущность, которая позволяет Java быть «переносным языком» (писать один раз, работать в любом месте). На самом деле существуют конкретные реализации JVM для разных систем (Windows, Linux, MacOS, см. Список википедий.), Цель состоит в том, что с одинаковыми байткодами они дают одинаковые результаты.

JDK и JRE

Чтобы объяснить разницу между JDK и JRE, лучше всего прочитать документацию Oracle и ознакомиться с диаграммой:

Java Runtime Environment (JRE)

Java Runtime Environment (JRE) предоставляет библиотеки, виртуальную машину Java и другие компоненты для запуска апплетов и приложений, написанных на языке программирования Java. Кроме того, две ключевые технологии развертывания являются частью JRE: Java Plug-in, которая позволяет апплетам работать в популярных браузерах; и Java Web Start, которая развертывает автономные приложения по сети. Он также является основой технологий Java 2 Platform, Enterprise Edition (J2EE) для разработки и развертывания корпоративного программного обеспечения. JRE не содержит инструментов и утилит, таких как компиляторы или отладчики для разработки апплетов и приложений.

Java Development Kit (JDK)

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

Обратите внимание, что Oracle не единственный, кто предоставляет JDK.

Процесс компиляции JIT (любезность: документация Oracle)


Если вы программист на Java, вам понадобится JDK в вашей системе, и этот пакет будет включать JRE и JVM, но если вы обычный пользователь, которому нравится играть в онлайн-игры, вам понадобится только JRE, и в этом пакете не будет JDK ,

JVM

JVM (виртуальная машина Java) - абстрактная машина. Это спецификация, предоставляющая среду выполнения, в которой может быть запущен java-байт-код.

JVM доступны для многих аппаратных и программных платформ. JVM, JRE и JDK зависят от платформы, поскольку конфигурация каждой ОС отличается. Но Java не зависит от платформы.

JRE

Он содержит все необходимое для запуска приложений Java в скомпилированной форме. Вам не нужны библиотеки и другие материалы. Все, что вам нужно, составлено.

JRE не может использоваться для разработки, используется только для запуска приложений.

Java SE Development Kit (JDK)

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

(Источники: вопросы и ответы GeeksForGeeks , http://docs.oracle.com/javase/7/docs/technotes/guides/ )


Если вы хотите запускать Java-программы, но не разрабатывать их, загрузите среду выполнения Java или JRE. Если вы хотите их разработать, загрузите Java Development Kit или JDK

JDK

Давайте позвоним JDK - это комплект, который включает в себя то, что нужно для разработки и запуска Java-приложений.

JDK предоставляется как среда разработки для создания приложений, компонентов и апплетов.

JRE

Он содержит все необходимое для запуска приложений Java в скомпилированной форме. Вам не нужны библиотеки и другие материалы. Все, что вам нужно, составлено.

JRE не может использоваться для разработки, используется только для запуска приложений.


Просто:

JVM - это Java-код виртуальной машины, выполняемый на

JRE - это среда (стандартные библиотеки и JVM), необходимые для запуска приложений Java

JDK - это JRE с инструментами разработчика и документацией


Разница между JDK и JRE заключается в том, что JDK является комплектом для разработки Java, а JRE - местом, где вы запускаете свои программы.


Четкое понимание этих терминов (JVM, JDK, JRE) имеет важное значение для понимания их использования и различий.

JVM Java Virtual Machine (JVM) - это система времени выполнения, которая выполняет Java-байт-код. JVM похож на виртуальный компьютер, который может выполнять набор скомпилированных инструкций и манипулировать ячейками памяти. Когда компилятор Java компилирует исходный код, он генерирует высоко оптимизированный набор инструкций, называемых bytecode в файле .class. JVM интерпретирует эти инструкции байт-кода и преобразует их в машинный код для выполнения.

JDK Java Development Kit (JDK) - это среда разработки программного обеспечения, которую вы можете использовать для разработки и выполнения приложений Java. Он включает в себя JRE и набор инструментов программирования, таких как компилятор Java, интерпретатор, appletviewer и средство просмотра документов. JDK реализуется через платформы Java SE, Java EE или Java ME.

JRE Java Runtime Environment (JRE) является частью JDK, которая включает в себя JVM, основные классы и несколько библиотек, которые поддерживают разработку приложений. Хотя JRE доступен как часть JDK, вы также можете скачать и использовать его отдельно.

Для полного понимания вы можете увидеть мой блог: Jdk Jre Jvm и различия


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

предположим, если вы клиент, то вам не нужно беспокоиться о разработке. Просто вам нужна среда, чтобы запускать программу и получать результат, который предоставляется JRE.

JRE выполняет приложение, но JVM читает инструкции по строкам так, что это интерпретатор.

JDK = JRE + Средства разработки

JRE = JVM + Библиотечные классы


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

JRE - это в основном виртуальная машина Java, на которой работают ваши Java-программы. Он также включает плагины браузера для выполнения Applet.

JDK - абстрактная машина. Это спецификация, предоставляющая среду выполнения, в которой может быть запущен java-байт-код.

Итак, в основном JVM <JRE <JDK в соответствии с @Jaimin Patel сказал.


JRE - среда выполнения Java . Это пакет всего необходимого для запуска скомпилированной Java-программы, включая виртуальную машину Java (JVM), библиотеку классов Java, команду java и другую инфраструктуру. Однако он не может быть использован для создания новых программ.

JDK - это Java Development Kit , полнофункциональный SDK для Java. Он имеет все, что имеет JRE, но также и компилятор ( javac ) и инструменты (например, javadoc и jdb ). Он способен создавать и компилировать программы.

Обычно, если вы только заботитесь о запуске Java-программ на компьютере, вы установите только JRE. Это все, что вам нужно. С другой стороны, если вы планируете выполнять некоторые Java-программы, вам нужно установить JDK.

Иногда даже если вы не планируете заниматься разработкой Java на компьютере, вам все равно нужен JDK. Например, если вы развертываете веб-приложение с JSP, вы, как правило, просто запускаете Java-программы внутри сервера приложений. Зачем вам тогда нужен JDK? Поскольку сервер приложений будет конвертировать JSP в сервлеты Java и должен использовать JDK для компиляции сервлетов. Я уверен, что есть больше примеров.


Одно отличие от перспективы отладки:

Чтобы отлаживать системные классы Java, такие как String и ArrayList, вам нужна специальная версия JRE, которая скомпилирована с «отладочной информацией». JRE, включенный в JDK, предоставляет эту информацию, но обычный JRE этого не делает. Регулярная JRE не включает эту информацию для обеспечения лучшей производительности.

Что такое отладочная информация? Вот краткое объяснение, взятое из этого сообщения в блоге :

Современные компиляторы делают довольно хорошую работу, преобразуя ваш высокоуровневый код с его красивыми отложенными и вложенными структурами управления и произвольно типизированными переменными в большую кучу бит, называемых машинным кодом (или байт-кодом в случае Java), единственной целью которого является чтобы работать как можно быстрее на целевом CPU (виртуальный процессор вашей JVM). Код Java преобразуется в несколько инструкций машинного кода. Переменные перемещаются по всему месту - в стек, в регистры или полностью оптимизированы. Структуры и объекты даже не существуют в полученном коде - это просто абстракция, которая переводится в жестко закодированные смещения в буферы памяти.

Итак, как отладчик знает, где остановиться, когда вы просите его разбить на запись на какую-то функцию? Как вам удается найти, что вам показать, когда вы задаете ему значение переменной? Ответ - отладка информации.

Отладочная информация генерируется компилятором вместе с машинным кодом. Это представление отношения между исполняемой программой и исходным исходным кодом. Эта информация кодируется в заранее определенный формат и сохраняется вместе с машинным кодом. Многие из таких форматов были изобретены на протяжении многих лет для разных платформ и исполняемых файлов.


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





java