Java: определение, особенности, платформа и версии
Что такое Java?
Java — универсальный, класс-ориентированный, объектно-ориентированный язык, делающий акцент на переносимости, скорости и безопасности. Он питает широкий спектр приложений — от мобильных и корпоративных серверов до научных суперкомпьютеров и игровых консолей — работая практически на любой аппаратной платформе.
Что такое Java-платформа?
Java Platform — комплекс инструментов и библиотек для эффективной разработки, компиляции и запуска Java-приложений. Состоит из Java Development Kit (JDK), Java Virtual Machine (JVM) и Java Runtime Environment (JRE). Изначально создана Джеймсом Гослингом в Sun Microsystems, позже приобретена Oracle Corporation.
Определение и смысл Java
Java — мультиплатформенный, сетево-ориентированный язык, сочетающий силу ООП с надёжными механизмами безопасности. Один из самых широко принятых языков для построения масштабируемых, безопасных и высокопроизводительных приложений.
Для чего используется Java?
- Разработка Android-приложений
- Корпоративное ПО и middleware
- Мобильные и встраиваемые приложения
- Научные вычисления и симуляции
- Фреймворки анализа больших данных
- Низкоуровневое программирование через Java ME
- Серверные технологии (Apache, JBoss, GlassFish)
История Java
- Изначально назывался Oak — ранняя попытка программирования портативных устройств.
- Переименован в Java в 1995 году для использования веб-бума.
- Oracle приобрёл Sun Microsystems в 2009, консолидировав Java, MySQL и Solaris.
Версии Java
| Версия Java | Дата выпуска |
|---|---|
| JDK Alpha & Beta | 1995 |
| JDK 1.0 | 23 Jan 1996 |
| JDK 1.1 | 19 Feb 1997 |
| J2SE 1.2 | 8 Dec 1998 |
| J2SE 1.3 | 8 May 2000 |
| J2SE 1.4 | 6 Feb 2002 |
| J2SE 5.0 | 30 Sep 2004 |
| Java SE 6 | 11 Dec 2006 |
| Java SE 7 | 28 Jul 2011 |
| Java SE 8 | 18 Mar 2014 |
| Java SE 9 | 21 Sep 2017 |
| Java SE 10 | 20 Mar 2018 |
| Java SE 11 | 25 Sep 2018 |
| Java SE 12 | 19 Mar 2019 |
| Java SE 13 | 17 Sep 2019 |
| Java SE 14 | 17 Mar 2020 |
| Java SE 15 | 15 Sep 2020 (latest) |
Ключевые особенности Java
- Лёгко в изучении и чтении благодаря чистому синтаксису.
- Write once, run anywhere — платформонезависимый байт-код.
- Надёжная объектно-ориентированная архитектура.
- Встроенная многопоточность и автоматическая сборка мусора.
- Оптимизирована для сетевых, распределённых приложений.
- Обширная стандартная библиотека и богатая экосистема.
Компоненты языка Java
Java-программы начинаются как человекочитаемый исходный код и преобразуются компилятором в машинно-исполняемый байт-код.
Java Development Kit (JDK)
JDK предоставляет все инструменты для разработки — компилятор, отладчик, лаунчер и JRE. Доступен для Windows, macOS, Linux, Solaris; несколько версий могут сосуществовать на одной машине.
Java Virtual Machine (JVM)
JVM выполняет байт-код, транслируя его в нативные инструкции на лету. JIT-компилятор обеспечивает высокую производительность на всех платформах.
Java Runtime Environment (JRE)
Для конечных пользователей, которым нужно только запускать Java-приложения, JRE поставляет необходимые классовые библиотеки и JVM без инструментов разработки, входящих в JDK.
Типы Java-платформ
- Java SE (Standard Edition) — базовые API для десктопных и серверных приложений, сети, GUI, XML-парсинга.
- Java EE (Enterprise Edition) — продвинутые API для крупномасштабных многослойных корпоративных решений.
- Java ME (Micro Edition) — лёгкая VM для мобильных и встраиваемых устройств.
- JavaFX — современный UI-тулкит для богатых интернет-приложений с аппаратным ускорением графики.
Как работает Java Virtual Machine
- Напишите Java-код, напр.
System.out.println(1+2);, сохраните какExample.java. - Скомпилируйте в байт-код:
javac Example.java→Example.class. - Загрузите класс в JVM.
- JVM, резидентная в памяти ОС, определяет платформу и конвертирует байт-код в нативный машинный код для выполнения.
Почему Java платформонезависима
Компилятор Java выдаёт платформонезависимый байт-код, который любая JVM может интерпретировать, гарантируя бесшовный запуск одной кодовой базы на Windows, macOS, Linux, Android и др.
Резюме
- Java — мощный, мультиплатформенный, объектно-ориентированный язык для Android, корпоративных и распределённых вычислений.
- Java Platform (JDK, JVM, JRE) — надёжная экосистема для разработки и развёртывания.
- С момента создания Java прошла через множество релизов, последняя стабильная — Java SE 15 (сентябрь 2020).
- Четыре основные платформы — SE, EE, ME, JavaFX — охватывают широкий спектр доменов приложений.
- Архитектура Java устраняет необходимость в платформозависимых компиляторах, делая её истинно кроссплатформенным решением.
java
- Интерфейс vs Абстрактный класс в Java: Как выбрать правильную абстракцию
- Перегрузка конструкторов в Java — Объяснение с практическими примерами кода
- Понимание прокси-серверов: определение, функциональность и ключевые преимущества
- Java 10: удалённые устаревшие API, функции и опции
- JDK 10: устаревшие (deprecated) API, функции и опции
- Порошковая металлургия: определение, процессы и преимущества
- Сварка: определение, виды и применение
- Сверлильные станки: определение, компоненты и классификация
- Строгальные станки: определение, компоненты и принцип работы
- Металлическое покрытие: типы, преимущества и применение