Java 10 — Обзор
Java 10 является основным выпуском в графике выпуска Java и был выпущен 10 марта 2018 года. В Java 10 Oracle изменила график выпуска Java на новую модель, периодичность выпуска 6 месяцев и модель LTS для продуктов Oracle Java SE. Модель LTS означает модель долгосрочной поддержки.
Начиная с Java 10, Oracle выпускает новую версию Java каждые 6 месяцев, каждая версия содержит одну или две основные функции. Oracle использует концепцию поезда релизов. Каждый выпуск поезда рассчитан на 6 месяцев. Функции, которые разрабатываются в течение этого срока, поставляются в выпуске, в противном случае функции перемещаются в следующую последовательность выпусков.
Oracle JDK и OpenJDK
Большинство двоичных файлов Oracle JDK являются собственностью и лицензируются Oracle, а также имеют многочисленные ограничения на распространение. Принимая во внимание, что OpenJDK более дружелюбен к сообществу разработчиков. Начиная с Java 10, Oracle решила продвигать OpenJDK в качестве основного JDK, чтобы облегчить разработку Java на основе сообщества. Oracle продолжит выпускать свои собственные JDK, но выпустит их через 3 года и назовет их LTS-версиями. Таким образом, бинарные файлы OpenJDK будут выпускаться каждые шесть месяцев.
OpenJDK совместим с облаком и контейнерами, поскольку может свободно распространяться как часть контейнера. Таким образом, шаг Oracle по продвижению OpenJDK делает Java более удобным для разработки и развертывания в облаке или контейнерах.
Java 9 и Java 10 не являются выпуском LTS. Выпуск Java 11 является выпуском LTS.
Новые функции
Ниже приведены основные новые функции, представленные в Java 10.
-
286 JEP − Определение типа локальной переменной
-
JEP 322 − Версии выпуска с привязкой ко времени
-
JEP 304 − Интерфейс сборщика мусора
-
JEP 307 − Параллельная полная сборка мусора для G1
-
316 JEP − Распределение кучи на альтернативных устройствах памяти
-
296 JEP − Объединение леса JDK в единый репозиторий
-
310 японских долларов − Совместное использование данных класса приложений
-
314 JEP − Дополнительные расширения языковых тегов Unicode
-
319 JEP − Корневые сертификаты
-
317 JEP − Экспериментальный JIT-компилятор на основе Java
-
JEP 312 − Локальные рукопожатия потока
-
313 JEP − Удалите инструмент создания собственных заголовков
-
319 JEP − Корневые сертификаты
-
319 JEP − Корневые сертификаты
Java 10 расширила более 70 API-интерфейсов новыми методами и параметрами и удалила устаревшие API-интерфейсы и параметры. Мы увидим эти изменения в следующих главах.
java