После JDK 1.0 язык Java претерпел несколько изменений, а также многочисленные добавления классов и пакетов в стандартную библиотеку . Начиная с J2SE 1.4, развитие языка Java регулируется процессом сообщества Java (JCP), который использует запросы спецификации Java (JSR) для предложения и определения дополнений и изменений в платформе Java . Язык указан в спецификации языка Java (JLS); изменения в JLS управляются в соответствии с JSR 901 .
Помимо языковых изменений, за прошедшие годы в библиотеку классов Java были внесены и другие изменения , которые выросли с нескольких сотен классов в JDK 1.0 до более трех тысяч в J2SE 5. Полностью новые API , такие как Swing и Java2D , были введены, и многие из исходных классов и методов JDK 1.0 устарели . Некоторые программы позволяют преобразовывать программы Java из одной версии платформы Java в более старую (например, Java 5.0, перенесенная на 1.4) (см. Инструменты резервного копирования Java ).
Что касается плана поддержки Oracle Java SE, [1] версия 11 является поддерживаемой в настоящее время версией долгосрочной поддержки (LTS) вместе с Java 8 LTS, в которой клиенты Oracle получат поддержку Oracle Premier. Последнее бесплатное общедоступное обновление программного обеспечения Java 8 LTS для коммерческого использования было выпущено Oracle в январе 2019 года, в то время как Oracle продолжает выпускать бесплатные общедоступные обновления Java 8 для разработки [1] и личного использования на неопределенный срок. [2] Поддержка Java 10, ранее поддерживаемой версии быстрого выпуска, закончилась в сентябре 2018 г., в тот же день, когда началась поддержка Java 11. Java 7 больше не поддерживается публично. Для Java 11 долгосрочная поддержка Oracle не будет предоставляться общественности; вместо этого более широкий OpenJDKcommunity, как AdoptOpenJDK или другие, как ожидается, выполнит эту работу. [3]
Общая доступность Java 16 состоялась 16 марта 2021 г., и Java 17 сейчас также находится в разработке. [4]
Версия | Дата выпуска | Конец бесплатных общедоступных обновлений [1] [5] [6] [7] | Расширенная поддержка до |
---|---|---|---|
JDK Beta | 1995 г. | ? | ? |
JDK 1.0 | Январь 1996 г. | ? | ? |
JDK 1.1 | Февраль 1997 г. | ? | ? |
J2SE 1.2 | Декабрь 1998 г. | ? | ? |
J2SE 1.3 | Май 2000 г. | ? | ? |
J2SE 1.4 | Февраль 2002 г. | Октябрь 2008 г. | Февраль 2013 |
J2SE 5.0 | Сентябрь 2004 г. | Ноябрь 2009 г. | Апрель 2015 г. |
Java SE 6 | Декабрь 2006 г. | апрель 2013 | Декабрь 2018 г. Декабрь 2023 г., платная поддержка Zulu [8] |
Java SE 7 | Июль 2011 г. | Апрель 2015 г. | Июль 2022 г. |
Java SE 8 (LTS) | Март 2014 г. | Январь 2019 г. для Oracle (коммерческая) Декабрь 2030 г. для Oracle (некоммерческая) Декабрь 2030 г. для Zulu Не менее мая 2026 г. для AdoptOpenJDK Не менее мая 2026 г. для Amazon Corretto | Декабрь 2030 г. |
Java SE 9 | Сентябрь 2017 г. | Март 2018 для OpenJDK | N / A |
Java SE 10 | Март 2018 г. | Сентябрь 2018 для OpenJDK | N / A |
Java SE 11 (LTS) | Сентябрь 2018 г. | Сентябрь 2027 г. для Zulu Не менее октября 2024 г. для AdoptOpenJDK Не менее сентября 2027 г. для Amazon Corretto | Сентябрь 2026 г. или сентябрь 2027 г., например, Zulu [8]. |
Java SE 12 | Март 2019 г. | Сентябрь 2019 для OpenJDK | N / A |
Java SE 13 | Сентябрь 2019 г. | Март 2020 для OpenJDK | N / A |
Java SE 14 | Март 2020 г. | Сентябрь 2020 для OpenJDK | N / A |
Java SE 15 | Сентябрь 2020 г. | Март 2021 г. для OpenJDK, март 2023 г. для Zulu [8] | N / A |
Java SE 16 | Март 2021 г. | Сентябрь 2021 г. для OpenJDK | N / A |
Java SE 17 (LTS) | Сентябрь 2021 г. | Сентябрь 2030 года для зулусов | TBA |
Легенда: Старая версия Старая версия, все еще поддерживается Последняя версия Будущий выпуск |
История [ править ]
В сентябре 2017 года Марк Рейнхольд, главный архитектор платформы Java, предложил изменить последовательность выпусков на «один выпуск функции каждые шесть месяцев» вместо текущего двухлетнего графика [9] [10], и позже предложение вступило в силу. .
JDK 1.0 [ править ]
Первая версия была выпущена 23 января 1996 года. [11] [12] Первая стабильная версия, JDK 1.0.2, называется Java 1. [12]
JDK 1.1 [ править ]
Основные дополнения к выпуску от 19 февраля 1997 г. включали: [13]
- обширное переоснащение модели событий AWT
- внутренние классы добавлены в язык
- JavaBeans
- JDBC
- RMI
- отражение, которое поддерживало только интроспекцию, никакие изменения во время выполнения были невозможны. (Возможность отражающего изменения объектов была добавлена в J2SE 1.2 путем введения класса AccessibleObject и его подклассов, таких как класс Field .)
- Компилятор JIT (Just In Time) на платформах Microsoft Windows, разработанный для JavaSoft компанией Symantec
- Интернационализация и поддержка Unicode от Taligent [14]
J2SE 1.2 [ править ]
Codename Playground
Выпуск от 8 декабря 1998 г. и последующие выпуски через J2SE 5.0 были ретроспективно переименованы в Java 2, а название версии «J2SE» ( Java 2 Platform, Standard Edition ) заменило JDK, чтобы отличить базовую платформу от J2EE ( Java 2 Platform, Enterprise Edition ) и J2ME ( платформа Java 2, Micro Edition ). Это был очень важный выпуск Java, поскольку он утроил размер платформы Java до 1520 классов в 59 пакетах. Основные дополнения включали: [15]
strictfp
ключевое слово- Качели графический API был интегрирован в основные классы
- JVM Sun был оснащен JIT компилятором в первый раз
- Плагин Java
- Java IDL , реализация IDL для взаимодействия с CORBA
- Рамки коллекций
J2SE 1.3 [ править ]
Кодовое имя пустельга
Наиболее заметными изменениями в версии от 8 мая 2000 г. были: [16] [17]
- Включена JVM HotSpot (JVM HotSpot была впервые выпущена в апреле 1999 г. для J2SE 1.2 JVM)
- RMI был изменен для поддержки дополнительной совместимости с CORBA.
- Интерфейс именования и каталогов Java (JNDI) включен в основные библиотеки (ранее был доступен как расширение)
- Архитектура отладчика платформы Java (JPDA)
- JavaSound
- Синтетические прокси-классы
J2SE 1.4 [ править ]
Кодовое имя Мерлин
Выпуск от 6 февраля 2002 г. был первым выпуском платформы Java, разработанной в рамках процесса сообщества Java как JSR 59 . Основные изменения включали: [18] [19]
- Изменения языка
assert
ключевое слово (указано в JSR 41 )
- Улучшения библиотеки
- Регулярные выражения, смоделированные на основе регулярных выражений Perl
- Цепочка исключений позволяет исключению инкапсулировать исходное исключение нижнего уровня
- Поддержка интернет-протокола версии 6 ( IPv6 )
- Неблокирующий ввод-вывод (Java) (с именем NIO) (указан в JSR 51 )
- Logging API (указано в JSR 47 )
- API ввода-вывода изображений для чтения и записи изображений в таких форматах, как JPEG и PNG.
- Интегрированный синтаксический анализатор XML и процессор XSLT ( JAXP ) (указанный в JSR 5 и JSR 63 )
- Встроенные расширения безопасности и криптографии ( JCE , JSSE , JAAS )
- Включена Java Web Start (Java Web Start впервые была выпущена в марте 2001 года для J2SE 1.3) (указана в JSR 56 )
- API настроек (
java.util.prefs
)
Публичная поддержка и обновления безопасности для Java 1.4 закончились в октябре 2008 года. Платные обновления безопасности для клиентов Oracle закончились в феврале 2013 года. [20]
J2SE 5.0 [ править ]
Кодовое имя Тигр
Релиз от 30 сентября 2004 г. изначально имел номер 1.5, который до сих пор используется в качестве внутреннего номера версии. Номер был изменен на «лучше отражает уровень зрелости, стабильности, масштабируемости и безопасности J2SE». [21] Эта версия была разработана под JSR 176 .
J2SE 5.0 вступил в период окончания периода публичных обновлений 8 апреля 2008 г .; с 3 ноября 2009 г. обновления больше не доступны для широкой публики. Обновления были доступны для платных клиентов Oracle до мая 2015 г. [1]
Tiger добавил ряд важных новых языковых функций: [22] [23]
- Generics : обеспечивает безопасность типов во время компиляции (статическую) для коллекций и устраняет необходимость в большинстве типов (преобразование типов) (определяется JSR 14 )
- Метаданные : также называемые аннотациями ; позволяет помечать языковые конструкции, такие как классы и методы, с дополнительными данными, которые затем могут обрабатываться утилитами, поддерживающими метаданные (указанными в JSR 175 )
- Autoboxing / unboxing: автоматические преобразования между примитивными типами (такими как
int
) и примитивными классами-оболочками (такими какInteger
) (заданными JSR 201 ) - Перечисления :
enum
ключевое слово создает типизированный , упорядоченный список значений (напримерDay.MONDAY
,Day.TUESDAY
и т.д.); ранее это могло быть достигнуто только с помощью нетипизированных постоянных целых чисел или вручную созданных классов (шаблон типизированного перечисления) (указанный в JSR 201 ) - Varargs : последний параметр метода теперь может быть объявлен с использованием имени типа, за которым следует три точки (например
void drawtext(String... lines)
); в вызывающем коде может использоваться любое количество параметров этого типа, и затем они помещаются в массив для передачи методу, или, альтернативно, вызывающий код может передать массив этого типа. - Расширенный
for each
цикл:for
синтаксис цикла расширен специальным синтаксисом для перебора каждого члена массива или любогоIterable
, например стандартныхCollection
классов (указанных в JSR 201 ) - Улучшена семантика выполнения многопоточных программ Java; новая модель памяти Java решает проблемы сложности, эффективности и производительности предыдущих спецификаций [24]
- Статический импорт
Также были внесены следующие улучшения в стандартные библиотеки:
- Автоматическая генерация заглушки для объектов RMI
- Swing : новый внешний вид с возможностью смены скинов , называется synth.
- В параллельности утилиты в пакете [25]java.util.concurrent
- Класс сканера для анализа данных из различных входных потоков и буферов
Java 5 - это последний выпуск Java, официально поддерживающий Microsoft Windows 98 и Windows ME , [26] в то время как Windows Vista была новейшей версией Windows, на которой J2SE 5 поддерживалась до того, как Java 5 закончился в октябре 2009 года. . [20]
Java 5 Update 5 (1.5.0_05) - это последний выпуск Java, работающий в Windows 95 (с установленным Internet Explorer 5.5 ) и Windows NT 4.0 . [27]
Java 5 была впервые доступна в Apple Mac OS X 10.4 (Tiger) [28] и была версией Java по умолчанию, установленной в Apple Mac OS X 10.5 (Leopard).
Публичная поддержка и обновления безопасности для Java 1.5 закончились в ноябре 2009 года. Платные обновления безопасности для клиентов Oracle закончились в апреле 2015 года.
Изменение версий [ править ]
Эта версия представила новую систему управления версиями для языка Java, хотя старая система управления версиями продолжала использоваться для библиотек разработчиков:
Оба номера версии «1.5.0» и «5.0» используются для обозначения этого выпуска Java 2 Platform Standard Edition. Версия «5.0» - это версия продукта, а «1.5.0» - версия для разработчиков. Число «5.0» используется для лучшего отражения уровня зрелости, стабильности, масштабируемости и безопасности J2SE.
- Версия 1.5.0 или 5.0?[29]
Это соответствие продолжалось и в более поздних выпусках (Java 6 = JDK 1.6, Java 7 = JDK 1.7 и т. Д.).
Обновления Java 5 [ править ]
Релиз | Дата выпуска | Особенности |
---|---|---|
Java SE 5 | 2004-10-04 | Метаданные, общие типы, автоматическая упаковка и автоматическая распаковка примитивных типов, расширенный for цикл, нумерованные типы, статический импорт, форматированный ввод-вывод, varargs и утилиты параллелизма. Уменьшено время запуска и объем памяти. Совместное использование данных только для чтения между несколькими запущенными JVM. Удаленный мониторинг и управление. Новый API профилирования JVM. Программная генерация трассировки стека. Поддержка XML 1.1 с пространствами имен, XML-схемой, SAX 2.0.2, DOM Level 3 и XSLT с помощью быстрого компилятора XSLTC. Поддержка Unicode 4.0. |
Java SE 5 (обновление 1) | 2004-12-25 | Исправлено 50 ошибок. |
Java SE 5 (обновление 2) | 2005-03-16 | Исправлено несколько сбоев. Программа теперь скомпилирована с лучшей оптимизацией. Исправлены ошибки календаря и другие исправления. |
Java SE 5 (обновление 3) | 2005-05-03 | В этом выпуске исправлено несколько ошибок, включая сбои плагина Linux Mozilla. |
Java SE 5 (обновление 4) | 2005-07-04 | С выпуском поддержка J2SE для 64-разрядной версии Windows перешла от версии-кандидата к окончательной версии. Эта версия работает на компьютерах с 64-разрядным режимом AMD64 / EM64T с Windows Server 2003 x64 Editions. |
Java SE 5 (обновление 5) | 2005-09-18 | Исправлено несколько ошибок и улучшена производительность. Последний выпуск для Windows 95 и Windows NT 4.0. |
Java SE 5 (обновление 6) | 2005-12-07 | До этого обновления апплет или приложение могло указывать версию JRE, на которой оно будет работать. Это изменилось. Все апплеты выполняются с последней версией JRE. |
Java SE 5 (обновление 7) | 2006-05-29 | Исправлено несколько ошибок и улучшена производительность. |
Java SE 5 (обновление 8) | 2006-08-13 | Исправлено несколько ошибок и улучшена производительность. |
Java SE 5 (обновление 9) | 2006-11-12 | В этом выпуске исправлено несколько незначительных отклонений. |
Java SE 5 (обновление 10) | 2006-12-22 | Была добавлена реализация средства уведомления о событиях ввода-вывода epoll, поддерживаемая Linux 2.6. Исправлено множество ошибок. |
Java SE 5 (обновление 11) | 2007-03-08 | Исправлено несколько ошибок и улучшена производительность. |
Java SE 5 (обновление 12) | 2007-06-11 | |
Java SE 5 (обновление 13) | 2007-10-05 | Исправлены множественные уязвимости безопасности в Java Web Start, связанные с доступом к локальным файлам. Исправлена уязвимость безопасности в JRE, позволяющая обойти ограничения доступа к сети. Исправлено несколько других проблем с безопасностью и мелких ошибок. |
Java SE 5 (обновление 14) | ||
Java SE 5 (обновление 15) | 2008-03-06 | Было исправлено несколько сбоев из-за выхода за пределы буфера кучи, а также несколько других ошибок. Теперь включены новые корневые сертификаты от AOL, DigiCert и TrustCenter. |
Java SE 5 (обновление 16) | 2008-07-23 | В этом выпуске исправлены несколько недостатков безопасности, таких как уязвимости DoS, переполнение буфера и другие ошибки, которые могли привести к сбоям или давали апплетам доступ к определенным системным ресурсам. Эти уязвимости были обнаружены в Java Web Start, в агенте управления Java Management Extensions (JMX) и в функциях обработки XML-данных. |
Java SE 5 (обновление 17) | 2008-12-03 | Реализация кодировки UTF-8 была обновлена для обработки не самой короткой формы байтовых последовательностей UTF-8, что привело к несовместимости с предыдущими выпусками. Добавлены новые корневые сертификаты. Исправлено множество ошибок. |
Java SE 5 (обновление 18) | 2009-03-25 | Решено несколько проблем с безопасностью. Поведение функции JNDI для хранения и извлечения объектов Java в каталоге LDAP было немного изменено. Добавлено пять новых корневых сертификатов. Исправлено множество ошибок. |
Java SE 5 (обновление 19) | 2009-05-29 | Добавлена поддержка нескольких конфигураций системы. Добавлена поддержка сервисных тегов. Исправлено множество ошибок, в том числе несколько сбоев и утечек памяти. |
Java SE 5 (обновление 20) | 2009-08-06 | Было устранено несколько уязвимостей безопасности, таких как потенциальный доступ к системе со стороны ненадежных апплетов и целочисленные переполнения при обработке изображений и в Unpack200. Добавлено несколько новых корневых сертификатов. Исправлено множество других мелких ошибок. |
Java SE 5 (обновление 21) | 2009-09-09 | Исправлено множество мелких ошибок. |
Java SE 5 (обновление 22) | 2009-11-04 | Этот выпуск знаменует окончание срока службы (EOSL) для Java 5 и является его последней общедоступной версией. Было исправлено несколько уязвимостей системы безопасности, о которых сообщалось как Sun Alerts 269868, 270474, 270475 и 270476. Исправлено несколько других ошибок. Кроме того, были добавлены два новых корневых сертификата. |
Java SE 5 (обновление 23) | 2010-01-13 | Не является общедоступным, доступно только через программу поддержки Java SE и в кластере рекомендованных наборов исправлений Solaris 10; 32 исправления безопасности. |
Java SE 5 (обновление 24) | 2010-04-15 | Не является общедоступным, доступно только через программу поддержки Java SE и в кластере рекомендованных наборов исправлений Solaris 10; 2 исправления безопасности. |
Java SE 5 (обновление 25) | 2010-07-07 | Не является общедоступным, доступно только через программу поддержки Java SE и в кластере рекомендованных наборов исправлений Solaris 10; 26 исправлений безопасности. |
Java SE 5 (обновление 26) | 2010-10-12 | Не является общедоступным, доступно только через программу поддержки Java SE и в кластере рекомендованных наборов исправлений Solaris 10; 2 исправления безопасности. |
Java SE 5 (обновление 27) | 2010-12-08 | Не является общедоступным, доступно только через программу поддержки Java SE и в кластере рекомендованных наборов исправлений Solaris 10; 22 исправления безопасности. |
Java SE 5 (обновление 28) | 2011-02-15 | Не является общедоступным, доступно только через программу поддержки Java SE и в кластере рекомендованных наборов исправлений Solaris 10; 22 исправления безопасности [30] |
Java SE 5 (обновление 29) | 2011-03-21 | Не является общедоступным, доступно только через программу поддержки Java SE и в кластере рекомендованных наборов исправлений Solaris 10; 21 исправление безопасности. |
Java SE 5 (обновление 30) | 2011-06-07 | Не является общедоступным, доступно только через программу поддержки Java SE и в кластере рекомендованных наборов исправлений Solaris 10; 1 исправление безопасности. |
Java SE 5 (обновление 31) | 2011-08-16 | Не является общедоступным, доступно только через программу поддержки Java SE и в кластере рекомендованных наборов исправлений Solaris 10; 10 исправлений безопасности. |
Java SE 5 (обновление 32) | 2011-10-18 | Не является общедоступным, доступно только через программу поддержки Java SE и в кластере рекомендованных наборов исправлений Solaris 10; 20 исправлений безопасности [31] |
Java SE 5 (обновление 33) | 2011-12-12 | Не является общедоступным, доступно только через программу поддержки Java SE и в кластере рекомендованных наборов исправлений Solaris 10; 21 исправление безопасности. |
Java SE 5 (обновление 34) | 2012-02-14 | Не является общедоступным, доступно только через программу поддержки Java SE и в кластере рекомендованных наборов исправлений Solaris 10; 14 исправлений безопасности [32] |
Java SE 5 (обновление 35) | 2012-04-26 | Не является общедоступным, доступно только через программу поддержки Java SE и в кластере рекомендованных наборов исправлений Solaris 10; 5 исправлений безопасности. |
Java SE 5 (обновление 36) | 2012-06-12 | Не является общедоступным, доступно только через программу поддержки Java SE и в кластере рекомендованных наборов исправлений Solaris 10; 14 исправлений безопасности [33] |
Java SE 5 (обновление 38) | 2012-08-14 | Не является общедоступным, доступно только через программу поддержки Java SE и в кластере рекомендованных наборов исправлений Solaris 10; 30 исправлений безопасности [34] |
Java SE 5 (обновление 39) | 2013-02-19 | Не является общедоступным, доступно только через программу поддержки Java SE и в кластере рекомендованных наборов исправлений Solaris 10; 50 исправлений безопасности [35] |
Java SE 5 (обновление 40) | 2013-02-19 | Не является общедоступным, доступно только через программу поддержки Java SE и в кластере рекомендованных наборов исправлений Solaris 10; 5 исправлений безопасности [36] |
Java SE 5 (обновление 41) | 2013-03-04 | Не является общедоступным, доступно только через программу поддержки Java SE и в кластере рекомендованных наборов исправлений Solaris 10; 2 исправления безопасности [37] |
Java SE 5 (обновление 45) | 2013-04-16 | Не является общедоступным, доступно только через программу поддержки Java SE и в кластере рекомендованных наборов исправлений Solaris 10; 42 исправления безопасности [38] |
Java SE 5 (обновление 51) | 2013-06-18 | Не является общедоступным, доступно только через программу поддержки Java SE и в кластере рекомендованных наборов исправлений Solaris 10; 40 исправлений безопасности [39] |
Java SE 5 (обновление 55) | 2013-10-15 | Не является общедоступным, доступно только через программу поддержки Java SE и в кластере рекомендованных наборов исправлений Solaris 10; 51 исправление безопасности [40] |
Java SE 5 (обновление 61) | 2014-01-14 | Не является общедоступным, доступно только через программу поддержки Java SE и в кластере рекомендованных наборов исправлений Solaris 10; 36 исправлений безопасности [41] |
Java SE 5 (обновление 65) | 2014-04-15 | Не является общедоступным, доступно только через программу поддержки Java SE и в кластере рекомендованных наборов исправлений Solaris 10; 37 исправлений безопасности [42] |
Java SE 5 (обновление 71) | 2014-07-15 | Не является общедоступным, доступно только через программу поддержки Java SE и в кластере рекомендованных наборов исправлений Solaris 10; 20 исправлений безопасности [43] |
Java SE 5 (обновление 75) | 2014-10-16 | Не является общедоступным, доступно только через программу поддержки Java SE и в кластере рекомендованных наборов исправлений Solaris 10; 25 исправлений безопасности [44] |
Java SE 5 (обновление 81) | 2015-01-21 | Не является общедоступным, доступно только через программу поддержки Java SE и в кластере рекомендованных наборов исправлений Solaris 10; 19 исправлений безопасности [45] |
Java SE 5 (обновление 85) | 2015-04-14 | Не является общедоступным, доступно только через программу поддержки Java SE и в кластере рекомендованных наборов исправлений Solaris 10; 14 исправлений безопасности [46] |
Java SE 6 [ править ]
Кодовое имя Мустанг
В версии, выпущенной 11 декабря 2006 года, Sun заменила имя «J2SE» на Java SE и удалила «.0» из номера версии. [47] Внутренняя нумерация для разработчиков остается 1.6.0. [48]
Эта версия была разработана под JSR 270 .
На этапе разработки новые сборки, включая улучшения и исправления ошибок, выпускались примерно еженедельно. Бета-версии были выпущены в феврале и июне 2006 г., а окончательный выпуск состоялся 11 декабря 2006 г.
Основные изменения, внесенные в эту версию: [49] [50]
- Прекращена поддержка старых версий Win9x; неофициально Java 6 Update 7 была последней версией Java, работающей с этими версиями Windows. [ необходима цитата ] Это считается [ кем? ] в связи с крупными изменениями в обновлении 10.
- Поддержка языка сценариев ( JSR 223 ): общий API для тесной интеграции с языками сценариев и встроенная интеграция Mozilla JavaScript Rhino .
- Значительные улучшения производительности базовой платформы [51] [52] и Swing .
- Улучшенная поддержка веб-сервисов через JAX-WS ( JSR 224 ).
- Поддержка JDBC 4.0 ( JSR 221 ).
- Java Compiler API ( JSR 199 ): API, позволяющий Java-программе выбирать и вызывать Java-компилятор программно.
- Обновление JAXB до версии 2.0: включая интеграцию парсера StAX .
- Поддержка подключаемых аннотаций ( JSR 269 ). [53]
- Многие улучшения графического интерфейса , такие как интеграция SwingWorker в API, сортировка и фильтрация таблиц и настоящая двойная буферизация Swing (устранение эффекта серой зоны).
- Улучшения JVM включают: оптимизацию синхронизации и производительности компилятора , новые алгоритмы и обновления существующих алгоритмов сборки мусора , а также производительность запуска приложений.
Java 6 можно установить в Mac OS X 10.5 (Leopard), работающем на компьютерах с 64-разрядными процессорами (Core 2 Duo и выше). [54] Java 6 также поддерживается как 32-битными, так и 64-битными машинами под управлением Mac OS X 10.6 (Snow Leopard).
Срок поддержки Java 6 подошел к концу в феврале 2013 года, когда все общедоступные обновления, включая обновления безопасности, должны были быть остановлены. [55] [56] Oracle выпустила еще два обновления для Java 6 в марте и апреле 2013 года, в которых были исправлены некоторые уязвимости системы безопасности. [57] [58]
Обновления Java 6 [ править ]
После выпуска Java 6 Sun, а затем Oracle выпустили несколько обновлений, которые, хотя и не изменили общедоступный API, улучшили удобство использования для конечных пользователей или исправили ошибки. [59]
Релиз | Дата выпуска | Особенности |
---|---|---|
Java SE 6 | 2006-12-23 | В этом выпуске добавлено множество улучшений в области веб-служб, сценариев, баз данных, подключаемых аннотаций и безопасности, а также качества, совместимости и стабильности. JConsole теперь официально поддерживается. Добавлена поддержка Java DB. |
Java SE 6, обновление 1 | 2007-05-07 | |
Java SE 6 (обновление 2) | 2007-07-03 | |
Java SE 6, обновление 3 | 2007-10-03 | |
Java SE 6 (обновление 4) | 2008-01-14 | HotSpot ВМ 10 |
Java SE 6 (обновление 5) | 2008-03-05 | Устранено несколько недостатков безопасности. Теперь включены новые корневые сертификаты от AOL, DigiCert и TrustCenter. |
Java SE 6 (обновление 6) | 2008-04-16 | Был введен обходной путь для печально известной проблемы утверждения блокировки Xlib / XCB. Исправлена утечка памяти при использовании аутентификации Kerberos с LoginContext. Исправлено несколько других ошибок. |
Java SE 6 (обновление 7) [60] | Неофициально, Java SE 6 Update 7 (1.6.0.7) является последней версией Java, которая, как было показано, работает с операционными системами семейства Win9x [ необходима ссылка ] | |
Java SE 6 (обновление 10) [61] | 2008-10-15 | HotSpot VM 11. Основные изменения в этом обновлении:
|
Java SE 6 (обновление 11) [63] | 2008-12-03 | 13 исправлений безопасности [64] |
Java SE 6 (обновление 12) [65] | 2008-12-12 | Никаких исправлений безопасности; 64-битный плагин Java (только для 64-битных веб-браузеров); Поддержка Windows Server 2008 ; улучшения производительности графики и приложений JavaFX |
Java SE 6 (обновление 13) [66] | 2009-03-24 | 7 исправлений безопасности, JNDI сохраняет и извлекает объекты Java в LDAP, слегка изменен, JMX Change (createMBeanunregisterMBean), добавлены 4 новых корневых сертификата |
Java SE 6 (обновление 14) [67] | 2009-05-28 | HotSpot VM 14. Этот выпуск включает обширные обновления производительности для JIT-компилятора, сжатые указатели для 64-битных машин, а также поддержку сборщика мусора G1 (Garbage First) с малой паузой. [68] [69] Параметр Некоторые разработчики заметили проблему, появившуюся в этом выпуске, из-за которой отладчики случайно пропускают точки останова. [71] У Sun есть соответствующая ошибка, которая отслеживает проблему. Обходной путь применяется к виртуальным машинам клиента и сервера. [72] Использование |
Java SE 6 (обновление 15) | 2009-08-04 | Добавлена функция исправления на месте [73] |
Java SE 6 (обновление 16) | 2009-08-11 | Исправлена проблема, появившаяся в обновлении 14, из-за которой отладчики пропускали точки останова [74] |
Java SE 6 (обновление 17) [75] | 2009-11-04 | Исправления безопасности; два новых корневых сертификата |
Java SE 6 (обновление 18) [76] | 2010-01-13 | Никаких исправлений безопасности; Hotspot VM 16; поддержка Ubuntu 8.04 LTS Desktop Edition, SLES 11, Windows 7 , Red Hat Enterprise Linux 5.3, Firefox 3.6, VisualVM 1.2; обновленная БД Java; много улучшений производительности |
Java SE 6 (обновление 19) [77] | 2010-03-30 | Исправления безопасности; изменения корневого сертификата: семь новых, три удаленных, пять замененных более надежными алгоритмами подписи; временное исправление для атаки повторного согласования TLS |
Java SE 6 (обновление 20) [78] | 2010-04-15 | 2 исправления безопасности |
Java SE 6 (обновление 21) [79] | 2010-07-07 | Никаких исправлений безопасности; Hotspot VM 17; поддержка Red Hat Enterprise Linux 5.4 и 5.5, Oracle Enterprise Linux 4.8, 5.4, 5.5; Поддержка Google Chrome 4; поддержка настраиваемых индикаторов хода загрузки; VisualVM 1.2.2 |
Java SE 6 (обновление 22) [80] | 2010-10-12 | 29 исправлений безопасности; RFC 5746 поддержка |
Java SE 6 (обновление 23) [81] | 2010-12-08 | Никаких исправлений безопасности; Hotspot VM 19; лучшая поддержка языков с письмом справа налево |
Java SE 6 (обновление 24) [82] | 2011-02-15 | 21 исправление безопасности; обновленная БД Java |
Java SE 6 (обновление 25) | 2011-03-21 | Никаких исправлений безопасности; Hotspot VM 20; поддержка Internet Explorer 9 , Firefox 4 и Chrome 10; улучшенный BigDecimal; включает «многоуровневую» компиляцию в серверной виртуальной машине, которая позволяет ей запускаться быстро, как и клиентская виртуальная машина, при одновременном достижении лучшей пиковой производительности (эта функция включается путем указания параметров -server и -XX:+TieredCompilation команды) [83] |
Java SE 6 (обновление 26) [84] | 2011-06-07 | 17 новых исправлений безопасности; [85] последняя версия, совместимая с Windows Vista SP1 |
Java SE 6 (обновление 27) [86] | 2011-08-16 | Никаких исправлений безопасности; сертификация для Firefox 5 |
Java SE 6 (обновление 29) [87] | 2011-10-18 | 20 исправлений безопасности, различные исправления ошибок [88] |
Java SE 6 (обновление 30) [89] | 2011-12-12 | Никаких исправлений безопасности; исправление регрессии SSL в обновлении 29; поддержка Red Hat Enterprise Linux 6 |
Java SE 6 (обновление 31) [90] | 2012-02-14 | 14 исправлений безопасности и одно исправление ошибки; последняя версия надежно работает для Windows 2000 [91] |
Java SE 6 (обновление 32) [92] | 2012-04-26 | Никаких исправлений безопасности, различные исправления ошибок |
Java SE 6 (обновление 33) [93] | 2012-06-12 | 14 исправлений безопасности, улучшена загрузка файла конфигурации виртуальной машины. |
Java SE 6 (обновление 34) [94] | 2012-08-14 | Никаких исправлений безопасности, различные исправления ошибок |
Java SE 6 (обновление 35) [95] | 2012-08-30 | Содержит исправление для обеспечения безопасности [96] |
Java SE 6 (обновление 37) [97] | 2012-10-16 | 30 исправлений безопасности |
Java SE 6 (обновление 38) [98] | 2012-12-11 | Различные исправления ошибок [99] |
Java SE 6 (обновление 39) [100] | 2013-02-01 | 50 исправлений безопасности |
Java SE 6 (обновление 41) [101] | 2013-02-19 | 5 исправлений безопасности |
Java SE 6 (обновление 43) [102] | 2013-03-04 | 2 исправления безопасности |
Java SE 6 (обновление 45) [103] | 2013-04-16 | 42 исправления безопасности; [104] другие изменения; [103] финальное публичное обновление. [105] |
Java SE 6 (обновление 51) [106] | 2013-06-18 | Не общедоступно, доступно только в рамках программы поддержки Java SE и в Apple Update для OS X Snow Leopard, Lion и Mountain Lion; до 40 исправлений безопасности [107] |
Java SE 6 (обновление 65) [108] | 2013-10-15 | Не общедоступно, доступно только в рамках программы поддержки Java SE и в Apple Update для OS X Snow Leopard, Lion и Mountain Lion; не менее 11 критических исправлений безопасности [109] |
Java SE 6 (обновление 71) [110] | 2014-01-14 | Недоступно для публичной загрузки; 33 исправления [111] |
Java SE 6 (обновление 75) [112] | 2014-04-15 | Не является общедоступным, доступно только через программу поддержки Java SE и в кластере рекомендованных наборов исправлений Solaris 10 под номером. # 54; 25 исправлений безопасности [113] |
Java SE 6 (обновление 81) [114] | 2014-07-15 | Не является общедоступным, доступно только через программу поддержки Java SE и в кластере рекомендованных наборов исправлений Solaris 10; 11 исправлений безопасности [115] |
Java SE 6 (обновление 85) [116] | 2014-10-16 | Не является общедоступным, доступно только через программу поддержки Java SE и в кластере рекомендованных наборов исправлений Solaris 10; 18 исправлений безопасности [117] |
Java SE 6 (обновление 91) [118] | 2015-01-21 | Версии Linux x64 и Windows i586 доступны как эталонная реализация Java SE 6. [119] Другие версии доступны только через программу поддержки Java SE и в кластере рекомендованных наборов исправлений Solaris 10; 15 исправлений безопасности [120] |
Java SE 6 (обновление 95) | 2015-04-14 | Не является общедоступным, доступно только через программу поддержки Java SE и в кластере рекомендованных наборов исправлений Solaris 10; 14 исправлений безопасности [121] |
Java SE 6 (обновление 101) | 2015-07-15 | Не является общедоступным, доступно только через программу поддержки Java SE и в кластере рекомендованных наборов исправлений Solaris 10; 18 исправлений безопасности [122] Сертификация для IE 10 и 11 была введена в 1.6.0_101 |
Java SE 6 (обновление 105) | 2015-10-20 | Не является общедоступным, доступно только через программу поддержки Java SE и в кластере рекомендованных наборов исправлений Solaris 10; 17 исправлений безопасности [123] |
Java SE 6 (обновление 111) | 2016-01-20 | Не является общедоступным, доступно только через программу поддержки Java SE и в кластере рекомендованных наборов исправлений Solaris 10; 13 исправлений безопасности [124] |
Java SE 6 (обновление 113) | 2016-02-05 | Не является общедоступным, доступно только через программу поддержки Java SE и в кластере рекомендованных наборов исправлений Solaris 10; 1 исправление безопасности [125] |
Java SE 6 (обновление 115) | 2016-04-21 | Не является общедоступным, доступно только через программу поддержки Java SE и в кластере рекомендованных наборов исправлений Solaris 10; 8 исправлений безопасности [126] |
Java SE 6 (обновление 121) | 2016-07-19 | Не является общедоступным, доступно только через программу поддержки Java SE и в кластере рекомендованных наборов исправлений Solaris 10; 15 исправлений безопасности [127] |
Java SE 6 (обновление 131) | 2016-10-18 | Не является общедоступным, доступно только через программу поддержки Java SE и в кластере рекомендованных наборов исправлений Solaris 10; 13 исправлений безопасности [128] |
Java SE 6 (обновление 141) | 2017-01-17 | Не является общедоступным, доступно только через программу поддержки Java SE и в кластере рекомендованных наборов исправлений Solaris 10; 17 исправлений безопасности [129] |
Java SE 6 (обновление 151) | 2017-04-18 | Не является общедоступным, доступно только через программу поддержки Java SE и в кластере рекомендованных наборов исправлений Solaris 10; 10 исправлений безопасности [130] |
Java SE 6 (обновление 161) | 2017-07-18 | Не является общедоступным, доступно только через программу поддержки Java SE и в кластере рекомендованных наборов исправлений Solaris 10; 5 исправлений безопасности [131] |
Java SE 6 (обновление 171) | 2017-10-20 | Не является общедоступным, доступно только через программу поддержки Java SE и в кластере рекомендованных наборов исправлений Solaris 10; 7 исправлений безопасности [132] |
Java SE 6 (обновление 181) | 2018-01-16 | Не является общедоступным, доступно только через программу поддержки Java SE и в кластере рекомендованных наборов исправлений Solaris 10; 12 исправлений безопасности [133] |
Java SE 6 (обновление 191) | 2018-04-17 | Не является общедоступным, доступно только через программу поддержки Java SE и в кластере рекомендованных наборов исправлений Solaris 10; 7 исправлений безопасности [134] |
Java SE 6 (обновление 201) | 2018-07-17 | Не является общедоступным, доступно только через программу поддержки Java SE и в кластере рекомендованных наборов исправлений Solaris 10; 3 исправления безопасности [135] |
Java SE 6 (обновление 211) | 2018-10-18 | Не является общедоступным, доступно только через программу поддержки Java SE и в кластере рекомендованных наборов исправлений Solaris 10; 8 исправлений безопасности [136] |
Java SE 7 [ править ]
Java 7 (кодовое имя Dolphin [137] ) - это крупное обновление, которое было выпущено 7 июля 2011 г. [138] и стало доступным для разработчиков 28 июля 2011 г. [139] Период разработки был разбит на тринадцать этапов; 6 июня 2011 года завершился последний из тринадцати этапов. [139] [140] В среднем за один этап выпускалось 8 сборок (которые обычно включали улучшения и исправления ошибок). В списке возможностей проекта OpenJDK 7 перечислены многие изменения.
Дополнения в Java 7 включают: [141]
- Поддержка JVM для динамических языков с новым
invokedynamic
байт-кодом под JSR-292, [142] после работы по созданию прототипа, которая в настоящее время выполняется на многоязыковой виртуальной машине. - Сжатые 64-битные указатели [143] (доступны в Java 6 с
-XX:+UseCompressedOops
) [144] - Эти небольшие языковые изменения (сгруппированы в рамках проекта под названием Coin): [145]
- Строки в переключателе [146]
- Автоматическое управление ресурсами в инструкции try [147]
- Улучшенный вывод типа для создания универсального экземпляра, также известного как ромбовидный оператор <> [148]
- Упрощенное объявление метода varargs [149]
- Целочисленные двоичные литералы [150]
- Разрешение подчеркивания в числовых литералах [151]
- Перехват нескольких типов исключений и повторное генерирование исключений с улучшенной проверкой типов [152]
- Утилиты параллелизма под JSR 166 [153]
- Новая библиотека файлового ввода-вывода (определенная JSR 203), добавляющая поддержку нескольких файловых систем, метаданных файлов и символических ссылок. Новые пакеты
java.nio.file
,java.nio.file.attribute
иjava.nio.file.spi
[154] [155] - Timsort используется для сортировки коллекций и массивов объектов вместо сортировки слиянием.
- Поддержка на уровне библиотеки алгоритмов криптографии с эллиптическими кривыми
- XRender трубопровод для Java 2D, что улучшает управляемость возможностей , характерных для современных графических процессоров
- Новые API платформы для графических функций, изначально реализованные в версии 6u10 как неподдерживаемые API [156]
- Расширенная поддержка на уровне библиотеки новых сетевых протоколов, включая SCTP и протокол Sockets Direct.
- Upstream обновления XML и Unicode
- Наборы правил развертывания Java [157]
Lambda (реализация лямбда-функций в Java), Jigsaw (реализация модулей в Java ) и часть Coin были исключены из Java 7 и выпущены как часть Java 8 (за исключением Jigsaw , выпущенного в Java 9). [158] [159]
Java 7 была версией по умолчанию для загрузки на java.com с апреля 2012 года до выпуска Java 8. [160]
Обновления Java 7 [ править ]
Oracle выпускала общедоступные обновления для семейства Java 7 ежеквартально [161] до апреля 2015 года, когда продукт достиг конца своей публичной доступности. [162] Дальнейшие обновления для JDK 7, которые планируется продлить до июля 2022 года, доступны только для клиентов с контрактом на поддержку. [163]
Релиз | Дата выпуска | Особенности |
---|---|---|
Java SE 7 [164] | 2011-07-28 | Первый выпуск; HotSpot ВМ 21 |
Java SE 7 (обновление 1) [165] | 2011-10-18 | 20 исправлений безопасности, исправления других ошибок |
Java SE 7 (обновление 2) [166] | 2011-12-12 | Никаких исправлений безопасности; HotSpot VM 22; повышение надежности и производительности; поддержка Solaris 11 и Firefox 5 и новее; JavaFX включен в Java SE JDK, улучшения для веб-приложений |
Java SE 7 (обновление 3) [167] | 2012-02-14 | 14 исправлений безопасности [168] |
Java SE 7 (обновление 4) [169] | 2012-04-26 | Нет обновлений безопасности; HotSpot VM 23; Поддержка JDK для Mac OS X |
Java SE 7 (обновление 5) [170] | 2012-06-12 | 14 исправлений безопасности [171] |
Java SE 7 (обновление 6) [172] | 2012-08-14 | JavaFX и Java Access Bridge включены в установку Java SE JDK и JRE, поддержка JavaFX для сенсорных мониторов и сенсорных панелей, поддержка JavaFX для Linux, поддержка JDK и JRE для Mac OS X, JDK для Linux на ARM [173] |
Java SE 7 (обновление 7) [174] | 2012-08-30 | 4 исправления безопасности [96] |
Java SE 7 (обновление 9) [175] | 2012-10-16 | 30 исправлений уязвимостей безопасности [176] |
Java SE 7 (обновление 10) [177] | 2012-12-11 | Новые функции безопасности, такие как возможность отключить любое приложение Java от запуска в браузере и новые диалоговые окна, предупреждающие вас, когда JRE небезопасна, и исправления ошибок. |
Java SE 7 (обновление 11) [178] | 2013-01-13 | Olson Data 2012i; исправление проблем с регистрацией плагина в системах с установленной автономной версией JavaFX, исправления безопасности для CVE - 2013-0422 ; [179] уровень безопасности по умолчанию для Java-апплетов и веб-приложений был увеличен с «Среднего» до «Высокого». |
Java SE 7 (обновление 13) [180] | 2013-02-01 | 50 исправлений безопасности |
Java SE 7 (обновление 15) [181] | 2013-02-19 | 5 исправлений безопасности |
Java SE 7 (обновление 17) [182] | 2013-03-04 | 2 исправления безопасности |
Java SE 7 (обновление 21) [183] | 2013-04-16 | Множественные изменения, включая 42 исправления безопасности, новую серверную JRE, которая не включает подключаемый модуль, и JDK для Linux на ARM. |
Java SE 7 (обновление 25) [184] | 2013-06-18 | Множественные изменения, включая 40 исправлений безопасности [107] [185] |
Java SE 7 (обновление 40) [186] | 2013-09-10 | 621 исправления ошибок, [187] Новые функции безопасности, hardfloat ARM , Java ЦУП 5.2 и Retina Display поддержки [188] |
Java SE 7 (обновление 45) [189] | 2013-10-15 | 51 исправление безопасности; [109] защита от несанкционированного распространения приложений Java; восстановить подсказки безопасности; Изменения JAXP; TimeZone.set Изменение по умолчанию |
Java SE 7 (обновление 51) [190] | 2014-01-14 | 36 исправлений безопасности; блокировать апплеты JAVA без манифеста (например, удаленная консоль - Java-апплет - карта IBM IMM, карта HP iLO), даже если диалоговое окно с предупреждением содержит предложение «будет заблокировано в следующей версии», [191] [192] 17 исправлений ошибок |
Java SE 7 (обновление 55) [193] | 2014-04-15 | 37 исправлений безопасности, [113] 19 исправлений ошибок [194] |
Java SE 7 (обновление 60) [195] | 2014-05-28 | Java Mission Control 5.3, [196] 130 исправлений [197] |
Java SE 7 (обновление 65) [198] | 2014-07-15 | 18 исправлений ошибок [199] |
Java SE 7 (обновление 67) [200] | 2014-08-04 | 1 исправление ошибки [200] |
Java SE 7 (обновление 71) [201] | 2014-10-14 | 16 исправлений ошибок [202] |
Java SE 7 (обновление 72) [203] | 2014-10-14 | Та же дата выпуска обновления 71, что и соответствующее обновление набора исправлений (PSU) для Java SE 7, [204] 36 исправлений ошибок [205] |
Java SE 7 (обновление 75) [206] | 2015-01-20 | 12 исправлений ошибок, [207] SSLv3 отключен по умолчанию |
Java SE 7 (обновление 76) [208] | 2015-01-20 | Та же дата выпуска обновления 75, что и соответствующее обновление набора исправлений (PSU) для Java SE 7, [204] 97 исправлений ошибок [209] |
Java SE 7 (обновление 79) [210] | 2015-04-14 | 21 исправление безопасности, 6 исправлений ошибок, [211] |
Java SE 7 (обновление 80) [212] | 2015-04-14 | Последний публичный выпуск Java 7; та же дата выпуска обновления 79, что и соответствующее обновление набора исправлений (PSU) для Java SE 7, 104 исправления ошибок [213] |
Java SE 7 (обновление 85) | 2015-07-15 | Не является общедоступным, доступно только через программу поддержки Java SE и в кластере рекомендованных наборов исправлений Solaris 10; 25 исправлений безопасности [214] |
Java SE 7 (обновление 91) | 2015-10-20 | Не является общедоступным, доступно только через программу поддержки Java SE и в кластере рекомендованных наборов исправлений Solaris 10; 20 исправлений безопасности [215] |
Java SE 7 (обновление 95) | 2016-01-19 | Не является общедоступным, доступно только через программу поддержки Java SE и в кластере рекомендованных наборов исправлений Solaris 10; 8 исправлений безопасности [216] |
Java SE 7 (обновление 97) | 2016-02-05 | Не является общедоступным, доступно только через программу поддержки Java SE и в кластере рекомендованных наборов исправлений Solaris 10; 1 исправление безопасности [125] |
Java SE 7 (обновление 99) | 2016-03-23 | Не является общедоступным, доступно только через программу поддержки Java SE и в кластере рекомендованных наборов исправлений Solaris 10; 1 исправление безопасности [217] |
Java SE 7 (обновление 101) | 2016-04-18 | Не является общедоступным, доступно только через программу поддержки Java SE и в кластере рекомендованных наборов исправлений Solaris 10; 22 исправления безопасности [218] |
Java SE 7 (обновление 111) | 2016-07-19 | Не является общедоступным, доступно только через программу поддержки Java SE и в кластере рекомендованных наборов исправлений Solaris 10; 36 исправлений безопасности [127] |
Java SE 7 (обновление 121) | 2016-10-18 | Не является общедоступным, доступно только через программу поддержки Java SE и в кластере рекомендованных наборов исправлений Solaris 10; 32 исправления безопасности [128] |
Java SE 7 (обновление 131) | 2017-01-17 | Не является общедоступным, доступно только через программу поддержки Java SE и в кластере рекомендованных наборов исправлений Solaris 10; 34 исправления безопасности [129] |
Java SE 7 (обновление 141) | 2017-04-18 | Не является общедоступным, доступно только через программу поддержки Java SE и в кластере рекомендованных наборов исправлений Solaris 10; 8 исправлений безопасности [219] |
Java SE 7 (обновление 151) | 2017-07-18 | Не является общедоступным, доступно только через программу поддержки Java SE и в кластере рекомендованных наборов исправлений Solaris 10; 4 исправления безопасности [131] |
Java SE 7 (обновление 161) | 2017-10-20 | Не является общедоступным, доступно только через программу поддержки Java SE и в кластере рекомендованных наборов исправлений Solaris 10; 4 исправления безопасности [132] |
Java SE 7 (обновление 171) | 2018-01-16 | Не является общедоступным, доступно только через программу поддержки Java SE и в кластере рекомендованных наборов исправлений Solaris 10; 51 исправление безопасности [133] |
Java SE 7 (обновление 181) | 2018-04-17 | Не является общедоступным, доступно только через программу поддержки Java SE и в кластере рекомендованных наборов исправлений Solaris 10; 12 исправлений безопасности [134] |
Java SE 7 (обновление 191) | 2018-07-17 | Не является общедоступным, доступно только через программу поддержки Java SE и в кластере рекомендованных наборов исправлений Solaris 10; 9 исправлений безопасности [135] |
Java SE 7 (обновление 201) | 2018-10-18 | Не является общедоступным, доступно только через программу поддержки Java SE и в кластере рекомендованных наборов исправлений Solaris 10; 13 исправлений безопасности [136] |
Java SE 7 (обновление 211) | 2019-01-15 | Не является общедоступным, доступно только через программу поддержки Java SE и в кластере рекомендованных наборов исправлений Solaris 10; 5 исправлений безопасности [220] |
Java SE 7 (обновление 221) | 2019-04-16 | Не является общедоступным, доступно только через программу поддержки Java SE и в кластере рекомендованных наборов исправлений Solaris 10; 5 исправлений безопасности [221] |
Java SE 7 (обновление 231) | 2019-07-16 | Не является общедоступным, доступно только через программу поддержки Java SE и в кластере рекомендованных наборов исправлений Solaris 10; 6 исправлений безопасности [222] |
Java SE 7 (обновление 241) | 2019-10-15 | Не является общедоступным, доступно только через программу поддержки Java SE и в кластере рекомендованных наборов исправлений Solaris 10; 15 исправлений безопасности [223] |
Java SE 7 (обновление 251) | 2020-01-14 | Не является общедоступным, доступно только через программу поддержки Java SE и в кластере рекомендованных наборов исправлений Solaris 10; 12 исправлений безопасности [224] |
Java SE 7 (обновление 261) | 2020-04-14 | Не является общедоступным, доступно только через программу поддержки Java SE и в кластере рекомендованных наборов исправлений Solaris 10; 15 исправлений безопасности [225] |
Java SE 7 (обновление 271) | 2020-07-14 | Не является общедоступным, доступно только через программу поддержки Java SE и в кластере рекомендованных наборов исправлений Solaris 10; 11 исправлений безопасности [226] |
Java SE 7 (обновление 281) | 2020-10-20 | Не является общедоступным, доступно только через программу поддержки Java SE и в кластере рекомендованных наборов исправлений Solaris 10; 8 исправлений безопасности [227] |
Java SE 7 (обновление 291) | 2021-01-19 | Не является общедоступным, доступно только через программу поддержки Java SE и в кластере рекомендованных наборов исправлений Solaris 10; 1 исправление безопасности [228] |
Java SE 7 (обновление 301) | 2021-04-12 | Не является общедоступным, доступно только через программу поддержки Java SE и в кластере рекомендованных наборов исправлений Solaris 10; 11 исправлений безопасности [229] |
Java SE 8 [ править ]
Java 8 была выпущена 18 марта 2014 г. [230] [231] и включала некоторые функции, которые были запланированы для Java 7, но позже отложены. [232]
Работа над функциями была организована в рамках предложений по расширению JDK (JEP) . [233]
- JSR 335, JEP 126: поддержка на уровне языка лямбда-выражений (официально лямбда-выражения; неофициально - замыкания ) в рамках проекта Lambda [234] и методов по умолчанию (методы виртуального расширения ) [235] [236] [237], которые позволяют добавлять методов для интерфейсов без нарушения существующих реализаций. В сообществе Java продолжались дискуссии о том, следует ли добавлять поддержку лямбда-выражений. [238] [239] Sun позже объявила, что лямбда-выражения будут включены в Java, и попросила сообщество внести вклад в улучшение этой функции. [240] Опорные выражения лямбды также позволяет функционально-стилевые операции с потоками элементов, такие как преобразования в коллекциях, вдохновленные MapReduce . Методы по умолчанию позволяют автору API добавлять новые методы в интерфейс, не нарушая старый код, используя его. Хотя это не было их основной целью, [235] методы по умолчанию также допускают множественное наследование поведения (но не состояния).
- JSR 223, JEP 174: Project Nashorn , среда выполнения JavaScript, которая позволяет разработчикам встраивать код JavaScript в приложения.
- JSR 308, JEP 104: Аннотация к типам Java [241]
- Беззнаковая целочисленная арифметика [242]
- JSR 337, JEP 120: повторяющиеся аннотации [243]
- JSR 310, JEP 150: API даты и времени [244]
- JEP 178: Статически связанные библиотеки JNI [245]
- JEP 153: Запуск приложений JavaFX (прямой запуск JAR-файлов приложений JavaFX) [246]
- JEP 122: Удалить постоянное поколение [247]
Java 8 не поддерживается в Windows XP [248], но после обновления 25 для JDK 8 ее можно установить и запустить под Windows XP. [249] Предыдущие обновления JDK 8 можно было запустить под XP, загрузив заархивированный файл в формате zip и разархивировав его для исполняемого файла. Последней версией Java 8, которая могла работать на XP, является обновление 251. Но совместимость его компонентов начинает нарушаться при неподдерживаемых ОС в самом начале разработки обновлений Java 8.
С октября 2014 года Java 8 была версией по умолчанию для загрузки (а затем снова для загрузки, заменяющей Java 9) с официального сайта. [250] «Oracle будет продолжать предоставлять публичные обновления и автоматические обновления Java SE 8 бессрочно для личных пользователей». [2]
Обновления Java 8 [ править ]
Релиз | Дата выпуска | Особенности |
---|---|---|
Java SE 8 | 2014-03-18 | Первый выпуск |
Java SE 8 (обновление 5) [251] | 2014-04-15 | Использование " * " в Caller-Allowable-Codebase атрибуте; 11 исправлений ошибок |
Java SE 8 (обновление 11) [252] | 2014-07-15 | Инструмент анализа зависимостей Java (jdeps); Возможность отключения спонсоров в панели управления Java; Атрибут файла JAR - точка входа; Свойство ограничения обработки JAXP - maxElementDepth; 18 исправлений ошибок безопасности, [253] 15 исправлений ошибок |
Java SE 8 (обновление 20) [254] | 2014-08-19 | 669 исправлений ошибок, [255] JMC 5.4, дедупликация строк (по умолчанию отключено) |
Java SE 8 (обновление 25) [256] | 2014-10-14 | 10 исправлений ошибок |
Java SE 8 (обновление 31) [257] | 2015-01-19 | 26 исправлений ошибок; SSLv3 (по умолчанию отключен) |
Java SE 8 (обновление 40) [258] | 2015-03-03 | 645 исправлений ошибок, [259] Добавлено понятие «нехватка памяти», чтобы помочь указать, какой объем системной памяти все еще доступен (низкое давление = большой объем памяти, высокое давление = мало памяти). |
Java SE 8 (обновление 45) [260] | 2015-04-14 | 13 исправлений ошибок |
Java SE 8 (обновление 51) [261] | 2015-07-14 | Добавлена поддержка собственной песочницы на платформах Windows (по умолчанию отключена); также 25 исправлений безопасности, 14 исправлений ошибок |
Java SE 8 (обновление 60) [262] | 2015-08-18 | 480 исправлений ошибок [263] |
Java SE 8 (обновление 65) [264] | 2015-10-20 | 25 исправлений безопасности, 3 исправления ошибок |
Java SE 8 (обновление 66) [265] | 2015-11-16 | 15 исправлений ошибок |
Java SE 8 (обновление 71) [266] | 2016-01-19 | 8 исправлений безопасности, 5 исправлений ошибок [267] |
Java SE 8 (обновление 72) | 2016-01-19 | 8 исправлений безопасности, 5 исправлений ошибок, несколько улучшений |
Java SE 8 (обновление 73) [268] | 2016-02-03 | 1 исправление безопасности |
Java SE 8 (обновление 74) [269] | 2016-02-03 | 1 исправление безопасности |
Java SE 8 (обновление 77) [270] | 2016-03-23 | 1 исправление безопасности |
Java SE 8 (обновление 91) [271] | 2016-04-19 | 9 исправлений безопасности, 4 исправления ошибок и улучшения |
Java SE 8 (обновление 92) [272] | 2016-04-19 | Безопасность и исправления ошибок из 8u91, а также 76 дополнительных исправлений ошибок; ExitOnOutOfMemoryError и CrashOnOutOfMemoryError флаги были введены |
Java SE 8 (обновление 101) [273] | 2016-07-19 | Безопасность и исправления ошибок из 8u92, а также 9 дополнительных исправлений ошибок |
Java SE 8 (обновление 102) [274] | 2016-07-19 | Безопасность и исправления ошибок из 8u101, а также 118 дополнительных исправлений ошибок |
Java SE 8 (обновление 111) [275] | 2016-10-18 | 7 исправлений безопасности и исправлений 9 ошибок |
Java SE 8 (обновление 112) [276] | 2016-10-18 | Дополнительные функции и 139 исправлений ошибок по сравнению с 8u111 |
Java SE 8 (обновление 121) [277] | 2017-01-17 | 3 дополнительных функции, 5 изменений и 11 исправлений ошибок по сравнению с 8u112. |
Java SE 8 (обновление 131) [278] | 2017-04-18 | 4 изменения и 42 исправления ошибок (2 заметных). |
Java SE 8 (обновление 141) [279] | 2017-07-18 | Дополнительная функция, 3 изменения и 12 исправлений ошибок. |
Java SE 8 (обновление 144) [280] | 2017-07-26 | 32 Исправления безопасности и исправления ошибок из 8u141. |
Java SE 8 (обновление 151) [281] | 2017-10-17 | 22 исправления безопасности, 2 примечания, 1 отзыв сертификата, 1 новая функция, 6 изменений и 24 исправления ошибок из 8u144. |
Java SE 8 (обновление 152) [282] | 2017-10-17 | Исправления безопасности, 1 новая функция, 1 изменение и 238 исправлений ошибок из 8u151 (1 заметная). |
Java SE 8 (обновление 161) [283] | 2018-01-16 | 21 исправление безопасности, 3 новые функции, 9 изменений и 1 исправление ошибки из 8u152. |
Java SE 8 (обновление 162) [284] | 2018-01-16 | Исправления безопасности, исправления 63 ошибок. |
Java SE 8 (обновление 171) [285] | 2018-04-17 | Исправления безопасности, исправления ошибок. |
Java SE 8 (обновление 172) [286] | 2018-04-17 | Исправления безопасности, исправления ошибок. |
Java SE 8 (обновление 181) [287] | 2018-07-17 | Исправления безопасности, исправления ошибок. |
Java SE 8 (обновление 191) [288] | 2018-10-16 | Новые функции, изменения, исправления ошибок, исправления безопасности. |
Java SE 8 (обновление 192) [289] | 2018-10-16 | Новые функции, изменения, исправления ошибок. |
Java SE 8 (обновление 201) [290] | 2019-01-15 | Новые функции, изменения, исправления ошибок. |
Java SE 8 (обновление 202) [291] | 2019-01-15 | Новые функции, изменения, исправления ошибок. |
Java SE 8 (обновление 211) [292] | 2019-04-16 | Новые функции, изменения, исправления ошибок. Обновление лицензии . |
Java SE 8 (обновление 212) [293] | 2019-04-16 | Новые функции (например, 5 символов валюты, в том числе для Биткойна и «Новая японская эра Имя Рейва » [293] ), изменения, исправления ошибок. Обновление лицензии . |
Java SE 8 (обновление 221) [294] | 2019-07-16 | Новые функции, изменения, исправления ошибок. |
Java SE 8 (обновление 231) [295] | 2019-10-15 | Новые функции, изменения, исправления ошибок и 18 исправлений безопасности. |
Java SE 8 (обновление 241) [296] | 2020-01-14 | Новые функции, изменения, исправления ошибок. |
Java SE 8 (обновление 251) [297] | 2020-04-14 | Новые функции, изменения, исправления ошибок. Последняя версия, которая, как было показано, неофициально работает на Windows XP. |
Java SE 8 (обновление 261) [298] | 2020-07-14 | Новые функции, изменения, исправления ошибок. |
Java SE 8 (обновление 271) [299] | 2020-10-20 | Новые функции, изменения, исправления ошибок. |
Java SE 8 (обновление 281) [300] | 2021-01-19 | Новые функции, изменения, исправления ошибок. |
Java SE 8 (обновление 291) [301] | 2021-04-20 | Новые функции, изменения, исправления ошибок. |
Java SE 9 [ править ]
Java SE 9 была доступна 21 сентября 2017 г. [302] из-за неоднозначного принятия текущей реализации Project Jigsaw Исполнительным комитетом Java [303], что привело к тому, что Oracle исправила некоторые нерешенные проблемы и проблемы, а также уточнила некоторые критические технические вопросы. В последние дни июня 2017 года Java Community Process практически единодушно согласился с предложенной схемой модульной системы. [304]
- JSR 376: Модуляризация JDK в рамках Project Jigsaw ( система модулей платформы Java ) [159]
- JavaDB был удален из JDK [305]
- СЭП 193: Переменные ручки
: определить стандартные средства для вызова эквивалентов различных
java.util.concurrent.atomic
иsun.misc.Unsafe
операций - JEP 213: Milling Project Coin : разрешить @SafeVarargs для методов частного экземпляра; Разрешить использование переменных с эффективным окончанием в качестве ресурсов в операторе try-with-resources; Разрешить ромб с анонимными классами, если тип аргумента предполагаемого типа является обозначаемым; Завершите удаление, начатое в Java SE 8, подчеркивания из набора имен допустимых идентификаторов; Поддержка частных методов в интерфейсах
- JEP 222: jshell: оболочка Java (цикл чтения-вычисления-печати) : JShell - это интерфейс командной строки REPL для языка Java. [306]
- JEP 254: Компактные струны
- JEP 263: Графика HiDPI: автоматическое масштабирование и изменение размера
- СЭП 266: Больше обновления параллелизма
: Она включает в себя реализацию Java в Reactive Streams , [307] в том числе нового
Flow
класса [308] , который включал интерфейсы ранее предоставленные Reactive Streams [309] - JEP 268: XML-каталоги
- JEP 282: jlink: Java Linker : создание инструмента, который может собирать и оптимизировать набор модулей и их зависимости в настраиваемый образ времени выполнения. Это эффективно позволяет создать полностью работоспособный исполняемый файл, включая JVM для его запуска.
- JEP 295: Опережающая компиляция : опережающая компиляция, предоставляемая GraalVM .
Первый кандидат на выпуск Java 9 был выпущен 9 августа 2017 года. [310] Первый стабильный выпуск Java 9 был выпущен 21 сентября 2017 года. [311]
История [ править ]
На JavaOne 2011 Oracle обсудила функции, которые они надеются выпустить для Java 9 в 2016 году. [312] Java 9 должна включать лучшую поддержку многогигабайтных куч, лучшую интеграцию с собственным кодом, другой сборщик мусора по умолчанию ( G1 , для «более короткого времени ответа» ") [313] и самонастраивающаяся JVM. [314] В начале 2016 года выпуск Java 9 был перенесен на март 2017 года [315], а позже снова отложен еще на четыре месяца до июля 2017 года. [316]
Обновления Java 9 [ править ]
Релиз | Дата выпуска | Особенности |
---|---|---|
Java SE 9 [317] | 2017-09-21 | Первый выпуск |
Java SE 9.0.1 [318] | 2017-10-17 | Исправления безопасности и критические ошибки за октябрь 2017 г. |
Java SE 9.0.4 [319] | 2018-01-16 | Финальный выпуск для JDK 9; Исправления безопасности и критические ошибки за январь 2018 г. |
Java SE 10 [ править ]
OpenJDK 10 был выпущен 20 марта 2018 года с подтвержденными двенадцатью новыми функциями. [320] Среди этих функций были:
- JEP 286: Вывод типа локальной переменной
- JEP 296: объединить лес JDK в единый репозиторий
- JEP 304: Интерфейс сборщика мусора
- JEP 307: полный параллельный сборщик мусора для G1
- JEP 310: Совместное использование данных классов приложений
- JEP 312: локальные рукопожатия потока
- JEP 313: удалить инструмент создания собственных заголовков (javah)
- JEP 314: Дополнительные расширения тегов языка Unicode
- JEP 316: Распределение кучи на альтернативных устройствах памяти
- JEP 317: экспериментальный JIT-компилятор на основе Java
- JEP 319: корневые сертификаты
- JEP 322: Управление версиями релизов по времени
Первый из этих выводов типа локальной переменной JEP 286 позволяет использовать var
ключевое слово для локальных переменных с фактическим типом, вычисленным компилятором. Итак, мы можем сделать
var list = new ArrayList < String > (); // выводит ArrayList <String> var stream = list . поток (); // выводит Stream <String>
Обновления Java 10 [ править ]
Релиз | Дата выпуска | Особенности |
---|---|---|
Java SE 10 [321] | 2018-03-20 | Первый выпуск |
Java SE 10.0.1 [322] | 2018-04-17 | Исправления безопасности, 5 исправлений ошибок [323] |
Java SE 10.0.2 [324] | 2018-07-17 | Финальный выпуск для JDK 10. Исправления безопасности, 7 исправлений ошибок [325] |
Java SE 11 [ править ]
JDK 11 был выпущен 25 сентября 2018 г., и в настоящее время эта версия открыта для исправления ошибок. Он предлагает LTS или долгосрочную поддержку. Среди прочего, Java 11 включает ряд новых функций, таких как: [326]
- JEP 181: Контроль доступа на основе гнезд
- JEP 309: динамические константы файлов классов
- JEP 315: Улучшение встроенных функций Aarch64
- JEP 318: Эпсилон: сборщик мусора без использования
- JEP 320: удаление модулей Java EE и CORBA
- JEP 321: HTTP-клиент (стандартный)
- JEP 323: Синтаксис локальной переменной для лямбда-параметров
- JEP 324: ключевое соглашение с Curve25519 и Curve448
- JEP 327: Юникод 10
- JEP 328: Бортовой регистратор
- JEP 329: криптографические алгоритмы ChaCha20 и Poly1305
- JEP 330: Запуск однофайловых программ с исходным кодом
- JEP 331: Профилирование кучи с низкими накладными расходами
- JEP 332: Безопасность транспортного уровня (TLS) 1.3
- JEP 333: ZGC: масштабируемый сборщик мусора с малой задержкой (экспериментальный)
- JEP 335: отказ от ядра JavaScript Nashorn
- JEP 336: устарели инструменты и API Pack200
Ряд функций из предыдущих выпусков был удален; в частности, Java-апплеты и Java Web Start больше не доступны. Модули JavaFX , Java EE и CORBA были удалены из JDK [327]
Обновления Java 11 [ править ]
Релиз | Дата выпуска | Особенности |
---|---|---|
Java SE 11 [328] | 2018-09-25 | Первый выпуск |
Java SE 11.0.1 [329] | 2018-10-16 | Безопасность и исправления ошибок |
Java SE 11.0.2 [330] | 2019-01-15 | Безопасность и исправления ошибок |
Java SE 11.0.3 [331] | 2019-04-16 | Новые функции, безопасность и исправления ошибок |
Java SE 11.0.4 [332] | 2019-07-16 | Новые функции, безопасность и исправления ошибок; Функция обнаружения ОС Windows HotSpot правильно определяет Windows Server 2019 |
Java SE 11.0.5 [333] | 2019-10-15 | Новые функции, безопасность и исправления ошибок |
Java SE 11.0.6 [334] | 2020-01-14 | Новые функции, безопасность и исправления ошибок |
Java SE 11.0.7 [335] | 2020-04-14 | Новые функции, безопасность и исправления ошибок |
Java SE 11.0.8 [336] | 2020-07-14 | Новые функции, безопасность и исправления ошибок |
Java SE 11.0.9 [337] | 2020-10-20 | Новые функции, безопасность и исправления ошибок |
Java SE 11.0.10 [338] | 2021-01-19 | Новые функции, безопасность и исправления ошибок |
Java SE 11.0.11 [339] | 2021-04-20 | Новые функции, безопасность и исправления ошибок |
Java SE 12 [ править ]
JDK 12 был выпущен 19 марта 2019 года. Среди прочего, Java 12 включает ряд новых функций, таких как: [340]
- JEP 189: Шенандоа: сборщик мусора с малым временем паузы (экспериментальный)
- JEP 230: Пакет Microbenchmark
- JEP 325: Switch Expressions (предварительная версия)
- JEP 334: API констант JVM
- JEP 340: один порт AArch64, а не два
- JEP 341: Архивы CDS по умолчанию
- JEP 344: прерывание смешанных коллекций для G1
- JEP 346: незамедлительно вернуть неиспользованную выделенную память из G1
Функция предварительного просмотра Jep 325 расширяет switch
оператор, так что его также можно использовать как выражение, и добавляет новую форму метки case, где правая часть является выражением. Оператор разрыва не требуется. Для сложных выражений yield
можно использовать оператор. Это становится стандартом в Java SE 14.
int ndays = переключатель ( месяц ) { case JAN , MAR , MAY , JUL , AUG , OCT , DEC -> 31 ; case APR , JUN , SEP , NOV -> 30 ; case FEB -> { if ( year % 400 == 0 ) yield 29 ; иначе, если ( год % 100 == 0 ) выход 28 ; иначе, если ( год % 4 == 0 ) yield 29 ; иначе выход 28 ; } };
Обновления Java 12 [ править ]
Релиз | Дата выпуска | Особенности |
---|---|---|
Java SE 12 [341] | 2019-03-19 | Первый выпуск |
Java SE 12.0.1 [342] | 2019-04-16 | Новое название японской эры и исправления безопасности |
Java SE 12.0.2 [343] | 2019-07-16 | Удалены некоторые сертификаты корневого ЦС |
Java SE 13 [ править ]
JDK 13 был выпущен 17 сентября 2019 года. Java 13 включает следующие новые функции, а также «сотни небольших улучшений и тысячи исправлений ошибок». [344]
- JEP 350: динамические архивы CDS
- JEP 351: ZGC: разблокировать неиспользуемую память
- JEP 353: переопределить устаревший API сокетов
- JEP 354: Switch Expressions (предварительная версия)
- JEP 355: Текстовые блоки (предварительная версия)
JEP 355 Text Blocks позволяет использовать многострочные строковые литералы:
String html = "" " <HTML lang =" ru "> <body> <p> Привет, мир </p> </body> </html> " "" ;
Обновления Java 13 [ править ]
Релиз | Дата выпуска | Особенности |
---|---|---|
Java SE 13 [345] | 2019-09-17 | Релиз общедоступной версии |
Java SE 13.0.1 [346] | 2019-10-15 | Безопасность и исправления ошибок |
Java SE 13.0.2 [347] | 2020-01-14 | Безопасность и исправления ошибок |
Java SE 14 [ править ]
JDK 14 был выпущен 17 марта 2020 года. Java 14 включает следующие новые функции, а также «сотни небольших улучшений и тысячи исправлений ошибок». [348]
- JEP 305: сопоставление с образцом для instanceof (предварительная версия)
- JEP 343: Инструмент для упаковки (инкубатор)
- JEP 345: Распределение памяти с учетом NUMA для G1
- JEP 349: потоковая передача событий JFR
- JEP 352: энергонезависимые отображаемые байтовые буферы
- JEP 358: полезные исключения NullPointerExceptions
- JEP 359: Записи (предварительный просмотр)
- JEP 361: Switch Expressions (Стандарт)
- JEP 362: прекращение поддержки портов Solaris и SPARC
- JEP 363: Удаление сборщика мусора Concurrent Mark Sweep (CMS)
- JEP 364: ZGC в macOS
- JEP 365: ZGC в Windows
- JEP 366: исключение комбинации ParallelScavenge + SerialOld GC
- JEP 367: Удаление инструментов и API Pack200
- JEP 368: Текстовые блоки (второй просмотр)
- JEP 370: API доступа к внешней памяти (инкубатор)
JEP 305, Сопоставление с образцом, например, упрощает общий случай instanceof
теста, за которым сразу следует приведение, заменяя
if ( obj instanceof String ) { String s = ( String ) obj ; Система . из . Println ( с . Длина () ); }
с участием
if ( obj instanceof String s ) { System . из . Println ( с . Длина () ); }
JEP 359 Records позволяет легко создавать простые неизменяемые классы, подобные Tuple .
запись Point ( int x , int y ) { } Point p = new Point ( 3 , 4 ); Система . из . println ( стр . x () );
Обновления Java 14 [ править ]
Релиз | Дата выпуска | Особенности |
---|---|---|
Java SE 14 [349] | 2020-03-17 | Релиз общедоступной версии |
Java SE 14.0.1 [350] | 2020-04-14 | Безопасность и исправления ошибок |
Java SE 14.0.2 [351] | 2020-07-14 | Безопасность и исправления ошибок |
Java SE 15 [ править ]
JDK 15 был выпущен 15 сентября 2020 года. В Java 15 добавлена, например, поддержка многострочных строковых литералов (также известных как текстовые блоки). Сборщики мусора Shenandoah и Z (последние иногда сокращенно ZGC) теперь готовы к использованию в производственной среде (т. Е. Больше не помечены как экспериментальные). Поддержка операционной системы Oracle Solaris (и процессоров SPARC) прекращена (хотя она все еще доступна, например, в Java 11). Движок Nashorn JavaScript удален. Также удалены некоторые корневые сертификаты ЦС .
- JEP 339: Алгоритм цифровой подписи по кривой Эдвардса (EdDSA)
- JEP 360: Запечатанные классы (предварительная версия)
- JEP 371: Скрытые классы
- JEP 372: удалить движок Nashorn JavaScript Engine
- JEP 373: переопределить устаревший API-интерфейс DatagramSocket
- JEP 374: Отключить и исключить предвзятую блокировку
- JEP 375: сопоставление с образцом для instanceof (второй просмотр)
- JEP 377: ZGC: масштабируемый сборщик мусора с малой задержкой
- JEP 378: Текстовые блоки
- JEP 379: Шенандоа: сборщик мусора с короткими паузами
- JEP 381: Удаление портов Solaris и SPARC
- JEP 383: API доступа к внешней памяти (второй инкубатор)
- JEP 384: Записи (второй просмотр)
- JEP 385: исключить активацию RMI для удаления
JEP 360 Sealed Classes добавляет запечатанные классы и интерфейсы, которые ограничивают то, какие другие классы или интерфейсы могут их расширять или реализовывать. Только те классы, которые указаны в permits
предложении, расширяют класс или интерфейс.
пакет com.example.geometry ;общедоступный абстрактный запечатанный класс Shape разрешает Circle , Rectangle , Square {...}
Вместе с записями запечатанные классы являются типами алгебраических данных , записи - типами продуктов, а запечатанные классы - типами сумм . Они хорошо работают с другими недавними функциями, такими как записи, выражения переключения и сопоставление с образцом, например. Все они являются частью системы «сопоставления с образцом в Java», впервые обсужденной Гэвином Бирманом и Брайаном Гетцем в сентябре 2018 г. [352]
Обновления Java 15 [ править ]
Релиз | Дата выпуска | Особенности |
---|---|---|
Java SE 15 [353] | 2020-09-15 | Релиз общедоступной версии |
Java SE 15.0.1 [354] | 2020-10-20 | Безопасность и исправления ошибок |
Java SE 15.0.2 [355] | 2021-01-19 | Безопасность и исправления ошибок |
Java SE 16 [ править ]
JDK 16 был выпущен 16 марта 2021 года. В Java 16 удалены опции предварительной компиляции (и Graal JIT ). [356] Сама реализация Java была и все еще пишется на C ++ , в то время как с Java 16 допускается использование более поздних версий C ++ 14 (но все еще не таких, например, C ++ 17 или C ++ 20 ). Код также был перемещен на GitHub (отказавшись от системы управления версиями Mercurial ).
- JEP 338: Vector API (инкубатор)
- JEP 347: включить возможности языка C ++ 14
- JEP 357: переход с Mercurial на Git
- JEP 369: переход на GitHub
- JEP 376: ZGC: параллельная обработка стека потоков
- JEP 380: Каналы сокетов домена Unix
- JEP 386: порт Alpine Linux - еще не стабильный
- JEP 387: эластичное метапространство
- JEP 388: Порт Windows / AArch64
- JEP 389: API внешнего компоновщика (инкубатор)
- JEP 390: Предупреждения для классов на основе значений
- JEP 392: Инструмент для упаковки
- JEP 393: API доступа к внешней памяти (третий инкубатор)
- JEP 394: сопоставление с образцом для instanceof
- JEP 395: Записи
- JEP 396: строго инкапсулировать внутренние компоненты JDK по умолчанию
- JEP 397: Запечатанные классы (вторая версия)
Обновления Java 16 [ править ]
Релиз | Дата выпуска | Особенности |
---|---|---|
Java SE 16 [357] | 2021-03-16 | Релиз общедоступной версии |
Java SE 16.0.1 [358] | 2021-04-20 | Обновление базы данных часовых поясов, исправления ошибок и обновления безопасности |
Java SE 17 [ править ]
JDK 17 - это следующий выпуск с долгосрочной поддержкой (LTS), который сейчас находится в стадии активной разработки [359], который должен выйти в сентябре 2021 года, если текущие 6-месячные циклы выпуска продолжатся. Ожидается, что Java 17 станет вторым выпуском с долгосрочной поддержкой (LTS) после перехода на новую 6-месячную периодичность выпуска (первым из которых является Java 11).
- JEP 356: Расширенные генераторы псевдослучайных чисел
- JEP 382: новый конвейер рендеринга macOS
- JEP 391: порт macOS / AArch64
- JEP 398: исключить API-интерфейс апплета для удаления
- JEP 410: удалить экспериментальный компилятор AOT и JIT
Обновления Java 17 [ править ]
Релиз | Дата выпуска | Особенности |
---|---|---|
Последняя сборка [360] | 2021-09-xx уточняется | Сборки для раннего доступа: сборка 15 (2021-03-24) |
Будущие функции [ править ]
- Проект Valhalla : типы значений , объекты без идентичности, но с эффективным макетом памяти.
- Project Panama : улучшенная совместимость с машинным кодом , позволяющая исходному коду Java вызывать функции и использовать типы данных из других языков более простым способом и с большей производительностью, чем сегодня.
- Project Loom : виртуальные потоки , облегченная запланированная альтернатива пользовательскому режиму стандартным управляемым потокам ОС. Виртуальные потоки сопоставляются с потоками ОС во взаимосвязи «многие-ко-многим», в отличие от отношения «многие-к-одному» из исходной реализации зеленых потоков в ранних версиях Java.
Реализации [ править ]
Официально поддерживаемая платформа Java , впервые разработанная в Sun, а теперь управляемая Oracle, - это Java SE . Релизы основаны на проекте OpenJDK , который является бесплатным проектом с открытым исходным кодом и открытой моделью разработки . Однако существуют и другие реализации Java - отчасти из-за ранней истории Java как проприетарного программного обеспечения , в то время как некоторые реализации были созданы, чтобы предложить некоторые преимущества по сравнению со стандартной реализацией, часто в результате некоторых научных исследований или исследований, спонсируемых корпорациями. Многие дистрибутивы Linux включают сборки OpenJDK через проект IcedTea, начатый Red Hat., который обеспечивает более простую среду сборки и интеграции .
Visual J ++ и виртуальная машина Microsoft Java были созданы как несовместимые реализации. После иска Sun против Microsoft Microsoft отказалась от него и начала работу над платформой .NET .
Доступны и другие проприетарные реализации Java, такие как Zing от Azul ; Кроме того, Azul предлагает сертифицированные сборки OpenJDK с открытым исходным кодом под псевдонимом Zulu.
До выпуска OpenJDK, хотя реализация Sun все еще оставалась частной, был создан проект GNU Classpath, чтобы предоставить бесплатную реализацию платформы Java с открытым исходным кодом. С момента выпуска JDK 7, когда OpenJDK стал официальной эталонной реализацией, первоначальная мотивация для проекта GNU Classpath почти полностью исчезла, и его последний выпуск был в 2012 году.
Проект Apache Harmony был запущен незадолго до выпуска OpenJDK. После первоначального выпуска исходного кода Sun, проект Harmony продолжился, работая над реализацией по льготной лицензии , в отличие от защитной лицензии, выбранной для OpenJDK. Позже Google разработал Android и выпустил его по нестрогой лицензии. Android включил части проекта Harmony, дополненный собственной виртуальной машиной Google Dalvik и ART . С тех пор Apache Harmony был закрыт, а Google переключил использование компонентов Harmony на эквивалентные из OpenJDK.
И Jikes, и Jikes RVM - это исследовательские проекты с открытым исходным кодом, разработанные IBM .
Существует несколько других реализаций, которые начинались как проприетарное программное обеспечение, но теперь имеют открытый исходный код. IBM изначально разработала OpenJ9 как проприетарный J9, [361], но с тех пор перелицензировала проект и пожертвовала его Eclipse Foundation . JRockit - это проприетарная реализация, приобретенная Oracle и включенная в последующие версии OpenJDK.
Ссылки [ править ]
- ^ a b c d «План поддержки Oracle Java SE» . www.oracle.com .
- ^ a b «План поддержки Oracle Java SE» . Проверено 17 февраля 2021 .
- ^ Рейнхольд, Марк (2018-08-17). "Что означает LTS для OpenJDK?" . Проверено 28 августа 2018 .
- ^ «Сборки раннего доступа JDK 17» . jdk.java.net . Проверено 19 марта 2021 .
- ^ "Поддержка | AdoptOpenJDK" . accepttopenjdk.net .
- ^ «Расширенная поддержка Amazon Corretto 8 и 11» .
- ^ «Дорожная карта поддержки Azul Java» .
- ^ a b c «План поддержки Azul Java | Жизненный цикл поддержки Azul | Java 8 eol» . Азул . Источник 2021-02-19 .
- ^ Рейнхольд, Марк (2017-09-06). «Быстрое продвижение Java вперед» . Проверено 16 сентября 2017 .
- ^ "Вызов" всех на борт "шестимесячного поезда по выпуску Java" . theserverside.com. 2017-09-12 . Проверено 16 сентября 2017 .
- ^ "JavaSoft поставляет Java 1.0" . Архивировано из оригинального 10 марта 2007 года . Проверено 5 февраля 2008 .
- ^ а б Ортис, К. Энрике; Жигер, Эрик (2001). Профиль мобильного информационного устройства для Java 2 Micro Edition: Руководство разработчика . Джон Вили и сыновья . ISBN 978-0471034650. Проверено 30 мая 2012 года .
- ^ Версия 1.1 пресс-релиз , вс.
- ↑ Теннант, Дон (15 марта 1997 г.). «Taligent готовит большие технологии интернационализации» . Компьютерный мир . IDG . Проверено 16 января 2021 года .
- ^ Версия 1.2 пресс-релиз , вс.
- ^ Версия 1.3 пресс-релиз , вс.
- ^ "Версия 1.3 полный список изменений" . Архивировано из оригинала на 7 ноября 2006 года.
- ^ Версия 1.4 пресс-релиз .
- ^ "Версия 1.4 полный список изменений" . Архивировано из оригинала 8 января 2007 года.
- ^ a b «Платформа Java 2 5.0 и Java для бизнеса 5.0» . Корпорация Oracle . 2010 . Проверено 22 октября 2012 года .
- ^ "Версия 1.5.0 или 5.0?" . Oracle.
- ^ Версия 1.5 для прессы .
- ^ Версия 1.5 полный список изменений .
- ^ "JSR 133, 2.4 Почему существующие спецификации не удовлетворяют эту потребность?" . Oracle.
- Перейти ↑ Goetz, Brian (2006). Параллелизм Java на практике . Эддисон-Уэсли. п. xvii. ISBN 0-321-34960-1.
- ^ «Java 5.0 больше не доступна на Java.com» . Java.com. 2009-11-03 . Проверено 30 сентября 2016 .
- ^ Lineback, Натан. «Разное Windows 2 - страница« Поджаренные технологии Натана »» . Проверено 30 сентября 2016 .
- ^ Вырезание, Kebin (3 мая 2005). «Java 5 доступна для Mac OS X» . Sitepoint . Проверено 30 сентября 2016 года .
- ^ "Версия 1.5.0 или 5.0?" . Oracle.com . Проверено 18 апреля 2016 года .
- ^ «Oracle Java SE и Java for Business Critical Patch Update Advisory - февраль 2011 г.» . Проверено 15 февраля 2011 .
- ^ «Oracle Java SE Critical Patch Update Advisory - October 2011» . Проверено 18 октября 2011 .
- ^ «Рекомендации по обновлению критических исправлений Oracle Java SE - февраль 2012 г.» . Проверено 14 февраля 2012 .
- ^ «Рекомендации по обновлению критических исправлений Oracle Java SE - июнь 2012 г.» . Проверено 12 июня 2012 .
- ^ «Oracle Java SE Critical Patch Update Advisory - October 2012» . Проверено 14 августа 2012 .
- ^ «Oracle Java SE Critical Patch Update Advisory - февраль 2013 г.» . Проверено 19 февраля 2013 .
- ^ «Обновленный выпуск обновления критического исправления Oracle Java SE за февраль 2013 г.» . Проверено 19 февраля 2013 .
- ^ "Oracle Security Alert для CVE-2013-1493" . Проверено 4 марта 2013 .
- ^ «Oracle Java SE Critical Patch Update Advisory - April 2013» . Проверено 16 апреля 2013 .
- ^ «Рекомендации по обновлению критических исправлений Oracle Java SE - июнь 2013 г.» . Проверено 18 июня 2013 .
- ^ «Oracle Critical Patch Update Advisory - октябрь 2013 г.» . Проверено 15 октября 2013 .
- ^ «Oracle Critical Patch Update Advisory - январь 2014 г.» . Проверено 14 января 2014 .
- ^ «Oracle Critical Patch Update Advisory - апрель 2014 г.» . Проверено 15 апреля 2014 .
- ^ «Oracle Critical Patch Update Advisory - июль 2014 г.» . Проверено 15 июля 2014 .
- ^ «Oracle Critical Patch Update Advisory - октябрь 2014 г.» . Проверено 16 октября 2014 .
- ^ «Oracle Critical Patch Update Advisory - январь 2015 г.» . Проверено 21 января 2015 .
- ^ «Oracle Critical Patch Update Advisory - апрель 2015 г.» . Проверено 14 апреля 2015 .
- ^ Название бренда Java .
- ^ Версия 6 , веб-заметки Java, Sun.
- ^ Версия 1.6 для печати .
- ^ Версия 1.6 полный список изменений .
- ↑ Java Lobby. Архивировано 13 октября 2008 г. в Wayback Machine .
- ^ "HotSpot Мустанга" . Архивировано из оригинала 2 января 2007 года.
- ^ Дарси, Джо (2008-08-03). «Удачная замена» . Проверено 29 июля 2009 .
- ^ «Установите Java 6 на Mac OS X Leopard | Gephi, программное обеспечение для визуализации графиков с открытым исходным кодом» . Gephi.org . Проверено 30 сентября 2016 .
- ^ «План поддержки Oracle Java SE» . Корпорация Oracle . 19 сентября 2012 . Проверено 22 октября 2012 года .
- ^ «Автообновление и обновление через панель управления Java JRE 6 заменит JRE 6 на JRE 7» . Корпорация Oracle . 19 февраля 2013 . Проверено 2 марта 2013 года .
- ^ «Java SE Development Kit 6, обновление 43, примечания к выпуску» . Корпорация Oracle . 4 марта 2013 . Проверено 4 марта 2013 года .
- ^ «Java SE Development Kit 6, обновление 45, примечания к выпуску» . Корпорация Oracle . 4 марта 2013 . Проверено 4 марта 2013 года .
- ^ «Примечания к выпуску обновления Java SE 6» . www.oracle.com .
- ^ «Примечания к выпуску обновления 7 Java SE6» . Oracle . Проверено 11 апреля 2013 .
- ^ a b c d "Технологии Oracle Java | Oracle" . www.oracle.com .
- ^ «Нимбус - Java.net» . Архивировано из оригинального 20 -го августа 2011 года . Дата обращения 1 февраля 2020 .
- ^ «Sun Java 6 Update 11 уже доступно, ожидает JavaFX» . FindMySoft.com . Проверено 13 ноября 2009 .
- ^ «Примечания к выпуску обновления 11 для Java SE 6» . www.oracle.com .
- ^ «Изменения в 1.6.0_12 (6u12)» . Sun Microsystems . Проверено 30 мая 2009 .
- ^ «Изменения в 1.6.0_13 (6u13)» . Sun Microsystems . Проверено 7 марта 2012 .
- ^ «Обновить примечания к выпуску» . Sun Microsystems . Проверено 30 мая 2009 .
- ↑ Скромный, Чарльз (13 мая 2008 г.). «JavaOne: сначала мусор» . infoq.com . Проверено 7 сентября 2008 .
- ^ Трус, Дэни (2008-11-12). «Java VM: пробуем новый сборщик мусора для JDK 7» . Архивировано из оригинала на 2011-12-08 . Проверено 22 января 2012 .
- ^ «Примечания к выпуску обновления 14 Java SE 6» . Sun Microsystems . Проверено 4 января 2010 .
- ^ «Точки останова не срабатывают в JDK 1.6.0_14» . Проверено 14 июля 2009 .
- ^ «Идентификатор ошибки: 6862295 Идентификатор потока JDWP изменяется во время сеанса отладки (что приводит к игнорированию точек останова)» . Проверено 22 июля 2009 .
- ^ «Изменения в 1.6.0_15 (6u15)» . Sun Microsystems .
- ^ «Изменения в 1.6.0_16 (6u16)» . Sun Microsystems . 2009-08-11 . Проверено 11 августа 2009 .
- ^ «Изменения в 1.6.0_17 (6u17)» . Sun Microsystems . 2009-11-04 . Проверено 13 ноября 2009 .
- ^ «Изменения в 1.6.0_18 (6u18)» . Sun Microsystems . 2010-01-13 . Проверено 18 января 2010 .
- ^ «Изменения в 1.6.0_19 (6u19)» . Sun Microsystems . 2010-03-30 . Проверено 30 марта 2010 .
- ^ «Изменения в 1.6.0_20 (6u20)» . Sun Microsystems . 2010-04-15 . Проверено 15 апреля 2010 .
- ^ «Изменения в 1.6.0_21 (6u21)» . Sun Microsystems . 2010-07-07 . Проверено 7 июля 2010 .
- ^ «Изменения в 1.6.0_22 (6u22)» . Корпорация Oracle . 2010-10-12 . Проверено 12 октября 2010 .
- ^ «Java SE 6, обновление 23» . Корпорация Oracle . 2010-12-08 . Проверено 8 декабря 2010 .
- ^ «Java SE 6, обновление 24» . Корпорация Oracle . 2011-02-15 . Проверено 15 февраля 2011 .
- ^ «Java SE 6, обновление 25» . Корпорация Oracle . 2011-04-11 . Проверено 24 апреля 2011 .
- ^ «Java SE 6, обновление 26» . Корпорация Oracle . 2011-06-07 . Проверено 7 июня 2011 .
- ^ «Рекомендации по обновлению критических исправлений Oracle Java SE - июнь 2011 г.» . www.oracle.com .
- ^ "Java SE 6 Обновление 27" . Корпорация Oracle . 2011-08-16 . Проверено 16 августа 2011 .
- ^ «Java SE 6, обновление 29» . Корпорация Oracle . 2011-10-18 . Проверено 18 октября 2011 .
- ^ «Oracle Java SE Critical Patch Update Advisory - October 2011» . www.oracle.com .
- ^ «Java SE 6, обновление 30» . Корпорация Oracle . Проверено 13 декабря 2011 .
- ^ «Java SE 6, обновление 31» . Корпорация Oracle . Проверено 17 февраля 2012 .
- ^ «Java 6 Update 32 не может установить ...» MSFN. Архивировано из оригинала на 2016-08-16 . Проверено 31 июля 2016 .
- ^ "Java SE 6 Обновление 32" . Корпорация Oracle . Проверено 3 мая 2012 .
- ^ "Java SE 6 Обновление 33" . Корпорация Oracle . Проверено 13 июня 2012 .
- ^ "Java SE 6 Обновление 34" . Корпорация Oracle . Проверено 15 августа 2012 .
- ^ "Java SE 6 Обновление 35" . Корпорация Oracle . Проверено 31 августа 2012 .
- ^ a b «Предупреждение безопасности Oracle для CVE-2012-4681» . Корпорация Oracle .
- ^ «Java SE 6, обновление 37» . Корпорация Oracle . Проверено 23 октября 2012 .
- ^ «Java SE 6, обновление 38» . Корпорация Oracle . Проверено 24 декабря 2012 .
- ^ Java SE Development Kit 6, обновление 38, исправления ошибок, Oracle.com
- ^ "Java SE 6 Обновление 39" . Корпорация Oracle . Проверено 1 февраля 2013 .
- ^ "Java SE 6 Обновление 41" . Корпорация Oracle . Проверено 19 февраля 2013 .
- ^ "Java SE 6 Обновление 43" . Корпорация Oracle . Проверено 4 марта 2013 .
- ^ a b «Java SE 6 (обновление 45)» . Корпорация Oracle . Проверено 16 апреля 2013 .
- ^ «Oracle Java SE Critical Patch Update Advisory - April 2013» . www.oracle.com .
- ^ "Зачем мне обновлять Java?" . java.com .
- ^ «Java SE Development Kit 7, обновление 25 (JDK 7u25)» . Корпорация Oracle . Проверено 19 июня 2013 .
Базовые показатели безопасности для Java Runtime Environment (JRE) на момент выпуска JDK 7u25 указаны в следующей таблице: ... 1.6.0_51
- ^ a b «Обновление критического исправления Oracle Java - июнь 2013 г.» . www.oracle.com .
- ^ «Java SE Development Kit 7, обновление 45 (JDK 7u45)» . Корпорация Oracle . Проверено 17 октября 2013 .
Базовые показатели безопасности для Java Runtime Environment (JRE) на момент выпуска JDK 7u45 указаны в следующей таблице: ... 1.6.0_65
- ^ a b «Oracle Critical Patch Update - октябрь 2013 г.» . www.oracle.com .
- ^ «Java SE Development Kit 7, обновление 51 (JDK 7u51)» . Корпорация Oracle . Проверено 19 января 2014 .
Базовые показатели безопасности для Java Runtime Environment (JRE) на момент выпуска JDK 7u51 указаны в следующей таблице: ... 1.6.0_71
- ^ «Java SE Development Kit 6, обновление 71, исправления ошибок» . Корпорация Oracle . Проверено 19 января 2014 .
- ^ «Java SE Development Kit 6, обновление 75, исправления ошибок» . Корпорация Oracle . Проверено 11 мая 2014 .
- ^ a b «Oracle Critical Patch Update - апрель 2014 г.» . www.oracle.com .
- ^ «Java SE Development Kit 6, обновление 81, исправления ошибок» . Корпорация Oracle . Проверено 16 июля 2014 .
- ^ «Oracle Critical Patch Update - июль 2014 г.» . www.oracle.com .
- ^ «Java SE Development Kit 6, обновление 85, исправления ошибок» . Корпорация Oracle . Проверено 26 января 2015 .
- ^ «Oracle Critical Patch Update - октябрь 2014 г.» . www.oracle.com .
- ^ «Java SE Development Kit 6, обновление 91, исправление ошибок» . Корпорация Oracle . Проверено 26 января 2015 .
- ^ «Эталонная реализация Java SE 6» . Корпорация Oracle . Проверено 24 октября 2016 .
- ^ «Oracle Critical Patch Update Advisory - январь 2015 г.» . www.oracle.com .
- ^ «Oracle Critical Patch Update - апрель 2015 г.» . www.oracle.com .
- ^ «Oracle Critical Patch Update Advisory - июль 2015 г.» . Проверено 15 июля 2015 .
- ^ «Oracle Critical Patch Update Advisory - октябрь 2015 г.» . Проверено 20 октября 2015 .
- ^ «Oracle Critical Patch Update Advisory - январь 2016 г.» . Проверено 20 января 2016 .
- ^ a b «Предупреждение безопасности Oracle для CVE-2016-0603» . Проверено 8 февраля 2016 .
- ^ «Oracle Critical Patch Update CVSS V2 Risk Matrices - апрель 2016 г.» . Проверено 21 апреля 2016 .
- ^ a b «Рекомендации по обновлению критических исправлений Oracle - июль 2016 г.» . Проверено 19 июля 2016 .
- ^ a b «Рекомендации по обновлению критических исправлений Oracle - октябрь 2016 г.» . Проверено 18 октября 2016 .
- ^ a b «Рекомендации по обновлению критических исправлений Oracle - январь 2017 г.» . Проверено 17 января 2017 .
- ^ «Oracle Critical Patch Update Advisory - апрель 2017 г.» . Проверено 18 апреля 2017 .
- ^ a b «Рекомендации по обновлению критических исправлений Oracle - июль 2017 г.» . Проверено 18 июля 2017 .
- ^ a b «Рекомендации по обновлению критических исправлений Oracle - октябрь 2017 г.» . Проверено 20 октября 2017 .
- ^ a b «Рекомендации по обновлению критических исправлений Oracle - январь 2018 г.» . Проверено 20 октября 2017 .
- ^ a b «Рекомендации по обновлению критических исправлений Oracle - апрель 2018 г.» . Проверено 17 апреля 2018 .
- ^ a b «Рекомендации по обновлению критических исправлений Oracle - июль 2018 г.» . Проверено 17 июля 2018 .
- ^ a b «Рекомендации по обновлению критических исправлений Oracle - октябрь 2018 г.» . Проверено 18 октября 2018 .
- ^ JDK7 , вс .
- ^ «Знакомство с Java 7 Webcast: Продвижение Java вперед» . Корпорация Oracle . 7 июля 2011 . Проверено 30 мая 2012 года .
- ^ a b "JDK 7" . openjdk.java.net .
- ^ "Вехи JDK 7" . OpenJDK . Корпорация Oracle . Проверено 30 мая 2012 года .
- ^ Миллер, Алекс. «Ява 7» . Проверено 30 мая 2008 .
- ^ «JSR 292: Поддержка динамически типизированных языков на платформе Java» . Проверено 25 августа 2013 года .
- ^ «Сжатый ой в JVM Hotspot» . OpenJDK . Проверено 1 августа 2012 .
- ^ «Параметры виртуальной машины Java HotSpot» . Oracle . Проверено 11 апреля 2013 .
- ^ «Улучшения языка программирования Java» . Download.oracle.com . Проверено 15 января 2013 .
- ^ "Строки в операторах переключателя" . Download.oracle.com . Проверено 15 января 2013 .
- ^ «Заявление о попытках с ресурсами» . Download.oracle.com . Проверено 15 января 2013 .
- ^ «Вывод типа для создания универсального экземпляра» . Download.oracle.com . Проверено 15 января 2013 .
- ^ «Улучшенные предупреждения компилятора при использовании неповторяемых формальных параметров с методами Varargs» . Download.oracle.com . Проверено 15 января 2013 .
- ^ «Двоичные литералы» . Download.oracle.com . Проверено 15 января 2013 .
- ^ «Подчеркивание в числовых литералах» . Download.oracle.com . Проверено 15 января 2013 .
- ^ «Перехват нескольких типов исключений и повторное отображение исключений с улучшенной проверкой типов» . Download.oracle.com . Проверено 15 января 2013 .
- ^ "Параллелизм JSR-166" . Проверено 16 апреля 2010 .
- ^ "Файловый ввод-вывод (с NIO.2)" . Java.sun.com. 2008-03-14 . Проверено 15 января 2013 .
- ^ "Устаревший код ввода-вывода файла" . Java.sun.com. 2012-02-28 . Проверено 15 января 2013 .
- ^ «Возможности JDK 7» . OpenJDK. 2011-07-28 . Проверено 15 марта 2013 .
- ^ «Введение в наборы правил развертывания» . Oracle. 2013-08-21 . Проверено 22 января 2019 .
- ^ "JavaOne 2011 Keynote" . Oracle. Архивировано из оригинала на 2011-10-26.
- ^ а б «Проект Пазл» . OpenJDK.
«Системные требования Java-модуля - ПРОЕКТ 12» . Oracle.
Криль, Пол (18 июля 2012 г.). «Проект Jigsaw отложен до Java 9» . InfoWorld . Проверено 15 июля 2020 . - ^ «Автообновление Java 7 и Java 6» . Oracle.
- ^ Таблица критических обновлений показывает четыре даты в год.
- ^ «Конец общедоступных обновлений Java 7» .
После апреля 2015 года Oracle больше не будет публиковать обновления Java SE 7 на своих общедоступных сайтах загрузки. Существующие загрузки Java SE 7, уже опубликованные по состоянию на апрель 2015 года, останутся доступными в Java Archive в Oracle Technology Network. Разработчикам и конечным пользователям рекомендуется обновиться до более свежих версий Java SE, которые остаются доступными для общедоступной загрузки, чтобы продолжать получать общедоступные обновления и улучшения безопасности. [..] Июль 2015 г .: Обновления для Java 7 больше не доступны для широкой публики. Oracle предлагает обновления для Java 7 только для клиентов, которые приобрели поддержку Java или имеют продукты Oracle, для которых требуется Java 7.
- ^ «План поддержки Oracle Java SE» . Корпорация Oracle. 2014-12-19 . Проверено 7 января 2015 .
- ^ «Примечания к выпуску JDK 7» . www.oracle.com .
- ^ "7u1-relnotes" . www.oracle.com .
- ^ "7u2-relnotes" . www.oracle.com .
- ^ «Примечания к выпуску Java SE 7, обновление 3» . www.oracle.com .
- ^ «Рекомендации по обновлению критических исправлений Oracle Java SE - февраль 2012 г.» . www.oracle.com .
- ^ «Примечания к выпуску Java SE 7, обновление 4» . www.oracle.com .
- ^ «Примечания к выпуску обновления 5 для Java SE Development Kit 7» . www.oracle.com .
- ^ «Рекомендации по обновлению критических исправлений Oracle Java SE - июнь 2012 г.» . www.oracle.com .
- ^ «Примечания к выпуску обновления 6 для Java SE Development Kit 7» . www.oracle.com .
- ^ «Java SE 7 (обновление 6) выпущено» . Архивировано из оригинального 27 -го октября 2012 года.
- ^ «Примечания к выпуску обновления 7 Java SE Development Kit 7» . www.oracle.com .
- ^ «Примечания к выпуску обновления 9 для Java SE Development Kit 7» . www.oracle.com .
- ^ «Oracle Java SE Critical Patch Update Advisory - October 2012» . www.oracle.com .
- ^ «Примечания к выпуску обновления 10 для Java SE Development Kit 7» . www.oracle.com .
- ^ «Примечания к выпуску JDK 7u11» . www.oracle.com .
- ^ «Oracle Security Alert для CVE-2013-0422» . Корпорация Oracle .
- ^ «Oracle Java SE Critical Patch Update Advisory - февраль 2013 г.» . www.oracle.com .
- ^ «Примечания к выпуску обновления 15 для Java SE Development Kit 7» . www.oracle.com .
- ^ «Примечания к выпуску обновления 17 для Java SE Development Kit 7» . www.oracle.com .
- ^ «Примечания к выпуску обновления 21 для Java SE Development Kit 7» . www.oracle.com .
- ^ «Примечания к выпуску обновления 25 для Java SE Development Kit 7» . www.oracle.com .
- ^ «Oracle выпускает исправления для 40 дыр в Java - Безопасность H: новости и возможности» . www.h-online.com .
- ^ «Примечания к выпуску обновления 40 для Java SE Development Kit 7» . www.oracle.com .
- ^ «Java SE Development Kit 7, обновление 40, исправления ошибок» . www.oracle.com .
- ^ «Выпущен Oracle JDK 7u40 - функции безопасности, жесткая установка ARM, Java Mission Control и многое другое» . Архивировано из оригинального 2 -го октября 2013 года .
- ^ «Примечания к выпуску обновления 45 Java SE Development Kit 7» . www.oracle.com .
- ^ «Примечания к выпуску обновления 51 для Java SE Development Kit 7» . www.oracle.com .
- ^ Oracle исправит Java и другие продукты во вторник , ZDNet ,
- ^ «Oracle Critical Patch Update - январь 2014 г.» . www.oracle.com .
- ^ «Примечания к выпуску обновления 55 Java SE Development Kit 7» . www.oracle.com .
- ^ «Java SE Development Kit 7, обновление 55, исправления ошибок» . www.oracle.com .
- ^ «Примечания к выпуску обновления 60 для Java SE Development Kit 7» . www.oracle.com .
- ^ «Примечания к выпуску Java Mission Control 5.3» . www.oracle.com .
- ^ «Java SE Development Kit 7, обновление 60, исправления ошибок» . www.oracle.com .
- ^ «Примечания к выпуску обновления 65 для Java SE Development Kit 7» . www.oracle.com .
- ^ «Java SE Development Kit 7, обновление 65, исправления ошибок» . www.oracle.com .
- ^ a b «Примечания к выпуску обновления 67 для Java SE Development Kit 7» . www.oracle.com .
- ^ «Примечания к выпуску обновления 71 для Java SE Development Kit 7» . www.oracle.com .
- ^ «Java SE Development Kit 7, обновление 71, исправления ошибок» . www.oracle.com .
- ^ «Примечания к выпуску обновления 72 для Java SE Development Kit 7» . www.oracle.com .
- ^ a b «Объяснение выпусков ЦП и блоков питания Java» . www.oracle.com .
- ^ «Java SE Development Kit 7, обновление 72, исправления ошибок» . www.oracle.com .
- ^ «Примечания к выпуску обновления 75 Java SE Development Kit 7» . www.oracle.com .
- ^ «Java SE Development Kit 7 Update 75, исправления ошибок» . www.oracle.com .
- ^ «Примечания к выпуску обновления 76 для Java SE Development Kit 7» . www.oracle.com .
- ^ «Java SE Development Kit 7, обновление 76, исправления ошибок» . www.oracle.com .
- ^ «Примечания к выпуску обновления 79 Java SE Development Kit 7» . www.oracle.com .
- ^ «Java SE Development Kit 7, обновление 79, исправления ошибок» . www.oracle.com .
- ^ «Примечания к выпуску обновления 80 для Java SE Development Kit 7» . www.oracle.com .
- ^ «Java SE Development Kit 7, обновление 80, исправления ошибок» . www.oracle.com .
- ^ «Oracle Critical Patch Update Advisory - июль 2015 г.» . www.oracle.com .
- ^ «Oracle Critical Patch Update Advisory - октябрь 2015 г.» . www.oracle.com .
- ^ «Oracle Critical Patch Update - январь 2016 г.» . www.oracle.com . Проверено 20 января 2016 .
- ^ «Java SE Development Kit 7, обновление 99» . Проверено 23 марта 2016 .
- ^ «Oracle Critical Patch Update Advisory - апрель 2016 г.» . Проверено 18 апреля 2016 .
- ^ «Oracle Critical Patch Update Advisory - апрель 2017 г.» . Проверено 18 апреля 2017 .
- ^ «Oracle Critical Patch Update Advisory - январь 2019 г.» . Проверено 18 апреля 2019 .
- ^ «Oracle Critical Patch Update Advisory - апрель 2019 г.» . Проверено 18 апреля 2019 .
- ^ «Oracle Critical Patch Update Advisory - июль 2019 г.» . Проверено 7 января 2020 .
- ^ «Oracle Critical Patch Update Advisory - октябрь 2019 г.» . Проверено 7 января 2020 .
- ^ «Oracle Critical Patch Update Advisory - январь 2020 г.» . Проверено 22 апреля 2021 .
- ^ «Oracle Critical Patch Update Advisory - апрель 2020 г.» . Проверено 22 апреля 2021 .
- ^ «Oracle Critical Patch Update Advisory - июль 2020 г.» . Проверено 22 апреля 2021 .
- ^ «Oracle Critical Patch Update Advisory - октябрь 2020 г.» . Проверено 22 апреля 2021 .
- ^ «Oracle Critical Patch Update Advisory - январь 2021 г.» . Проверено 22 апреля 2021 .
- ^ «Oracle Critical Patch Update Advisory - апрель 2021 г.» . Проверено 22 апреля 2021 .
- ^ «Предлагаемое новое расписание для Java 8» . 2013-04-18 . Проверено 19 апреля 2013 .
- ^ "JDK 8" . OpenJDK. 2013-04-18 . Проверено 28 января 2014 .
- ^ «Возможности JDK 8» . OpenJDK. 2014-01-28 . Проверено 28 января 2014 .
- ^ "JSR 337" . Проверено 30 января 2014 .
- ^ «Возможности Java 7» . Sun Microsystems. 2010-02-09 . Проверено 16 апреля 2010 .
- ^ a b «Развитие интерфейса с помощью методов виртуального расширения» (PDF) . Брайан Гетц. 2011-07-20 . Проверено 27 марта 2014 .
- ^ «Лямбда-выражения для языка программирования Java» . Брайан Гетц. 2012-10-23 . Проверено 27 марта 2014 .
- ^ «Учебники по Java: методы по умолчанию» . Oracle. Архивировано из оригинала на 2017-05-23 . Проверено 27 марта 2014 .
- ^ Gafter, Нил (2006-08-18). «Замыкания для Java» . Проверено 9 марта 2008 .
- ↑ Гослинг, Джеймс (31 января 2008). «Замыкания» . Архивировано из оригинала на 2011-07-22 . Проверено 9 марта 2008 .
- ↑ Рейнхольд, Марк (28 ноября 2009 г.). «Замыкания для Java» . Проверено 24 ноября 2009 .
- ^ "JEP 104: Аннотации к типам Java" . openjdk.java.net .
- ^ Дарси, Джо. «API беззнаковой целочисленной арифметики теперь в JDK 8» . blogs.oracle.com .
- ^ «JEP 120: Повторяющиеся аннотации» . openjdk.java.net .
- ^ «JEP 150: API даты и времени» . openjdk.java.net .
- ^ "JEP 178: Статически связанные библиотеки JNI" . openjdk.java.net .
- ^ «JEP 153: Запуск приложений JavaFX» . openjdk.java.net .
- ^ «JEP 122: Удалить постоянное поколение» . openjdk.java.net .
- ^ «Сертифицированные системные конфигурации Oracle JDK 8 и JRE 8» . Корпорация Oracle . Проверено 15 апреля 2014 .
- ^ Stahl, Хенрик (2014-07-11). «Обновлено: будущее Java в Windows XP» . Корпорация Oracle . Архивировано из оригинала на 2014-11-11 . Проверено 11 ноября 2014 .
JDK 8 не поддерживается в Windows XP. В ранних версиях JDK 8 были известные проблемы с установщиком в Windows XP, которые не позволяли установить его без ручного вмешательства. Это было решено в JDK 8 Update 25. Важным моментом здесь является то, что мы больше не можем предоставлять полные гарантии для Java в Windows XP, поскольку ОС больше не обновляется Microsoft. Мы настоятельно рекомендуем пользователям перейти на более новую версию Windows, которая все еще поддерживается Microsoft, чтобы поддерживать стабильную и безопасную среду.
- ^ Wieldt, Tori (27 октября 2014). «Java SE 8 на Java.com» . blog.oracle.com . Архивировано из оригинального 29 ноября 2014 года . Проверено 24 ноября 2014 года .
- ^ «Java SE Development Kit 8, обновление 5 (JDK 8u5)» . oracle.com . Проверено 28 апреля 2014 .
- ^ «Java SE Development Kit 8, обновление 11 (JDK 8u11)» . oracle.com . Проверено 16 июля 2014 .
- ^ «18 исправлений ошибок безопасности» . oracle.com . Проверено 16 июля 2014 .
- ^ «Java SE Development Kit 8, обновление 20 (JDK 8u20)» . oracle.com . Проверено 27 августа 2014 .
- ^ «Java SE Development Kit 8, обновление 20, исправление ошибок» . www.oracle.com .
- ^ «Java SE Development Kit 8, обновление 25 (JDK 8u25)» . oracle.com . Проверено 14 октября 2014 .
- ^ «Java SE Development Kit 8, обновление 31 (JDK 8u31)» . oracle.com . Проверено 21 января 2015 .
- ^ «Java SE Development Kit 8, обновление 40 (JDK 8u40)» . oracle.com . Проверено 4 марта 2015 .
- ^ «Java SE Development Kit 8, обновление 40, исправления ошибок» . www.oracle.com .
- ^ «Java SE Development Kit 8, обновление 45 (JDK 8u45)» . oracle.com . Проверено 15 апреля 2015 .
- ^ «Java SE Development Kit 8, обновление 51 (JDK 8u51)» . oracle.com . Проверено 14 июля 2015 .
- ^ «Java SE Development Kit 8, обновление 60 (JDK 8u60)» . oracle.com . Проверено 18 августа 2015 .
- ^ «Java SE Development Kit 8, обновление 60, исправления ошибок» . www.oracle.com .
- ^ «Java SE Development Kit 8, обновление 65 (JDK 8u65)» . oracle.com . Проверено 20 октября 2015 .
- ^ «Java SE Development Kit 8, обновление 66, примечания к выпуску» . oracle.com . Проверено 22 октября 2015 года .
- ^ «Java SE Development Kit 8, обновление 71, примечания к выпуску» . oracle.com . Проверено 20 января 2015 года .
- ^ «Java SE Development Kit 8, обновление 71, исправления ошибок» . oracle.com . Проверено 20 января 2015 года .
- ^ «Java SE Development Kit 8, обновление 73, примечания к выпуску» . oracle.com . Проверено 6 февраля, 2016 .
- ^ «Java SE Development Kit 8, обновление 74, примечания к выпуску» . oracle.com . Проверено 6 февраля, 2016 .
- ^ «Java SE Development Kit 8, примечания к выпуску обновления 77» . oracle.com . Проверено 23 марта 2016 года .
- ^ «Java SE Development Kit 8, обновление 91, примечания к выпуску» . oracle.com . Проверено 23 марта 2016 года .
- ^ «Java SE Development Kit 8, примечания к выпуску обновления 92» . Проверено 23 марта 2016 года .
- ^ «Java SE Development Kit 8, обновление 101, примечания к выпуску» . Проверено 19 июля, 2016 .
- ^ «Java SE Development Kit 8, обновление 102, примечания к выпуску» . Проверено 19 июля, 2016 .
- ^ «Java SE Development Kit 8, обновление 111, примечания к выпуску» . Проверено 19 октября, 2016 .
- ^ «Java SE Development Kit 8, примечания к выпуску обновления 112» . Проверено 19 октября, 2016 .
- ^ «Java SE Development Kit 8, обновление 121, примечания к выпуску» . Проверено 17 января, 2016 .
- ^ «Java SE Development Kit 8, обновление 131, примечания к выпуску» . www.oracle.com . Проверено 18 апреля 2017 .
- ^ «Java SE Development Kit 8, обновление 141, примечания к выпуску» . www.oracle.com . Проверено 18 июля 2017 .
- ^ «Java SE Development Kit 8, обновление 144, примечания к выпуску» . www.oracle.com . Проверено 26 июля 2017 .
- ^ «Java SE Development Kit 8, обновление 151, примечания к выпуску» . www.oracle.com . Проверено 19 октября 2017 .
- ^ «Java SE Development Kit 8, обновление 152, примечания к выпуску» . www.oracle.com . Проверено 19 октября 2017 .
- ^ «Java SE Development Kit 8, обновление 161, примечания к выпуску» . www.oracle.com . Проверено 18 января 2018 .
- ^ «Java SE Development Kit 8, обновление 162, примечания к выпуску» . www.oracle.com . Проверено 16 января 2018 .
- ^ «Java SE Development Kit 8, обновление 171, примечания к выпуску» . www.oracle.com . Проверено 17 апреля 2018 .
- ^ «Java SE Development Kit 8, обновление 172, примечания к выпуску» . www.oracle.com . Проверено 17 апреля 2018 .
- ^ «Java SE Development Kit 8, обновление 181, примечания к выпуску» . www.oracle.com . Проверено 20 июля 2018 .
- ^ «Java SE Development Kit 8, обновление 191, примечания к выпуску» . www.oracle.com . Проверено 16 октября 2018 .
- ^ «Java SE Development Kit 8, обновление 192 примечания к выпуску» . www.oracle.com . Проверено 16 октября 2018 .
- ^ «Java SE Development Kit 8, обновление 201, примечания к выпуску» . www.oracle.com . Проверено 16 января 2019 .
- ^ «Java SE Development Kit 8, обновление 202, примечания к выпуску» . www.oracle.com . Проверено 16 января 2019 .
- ^ «Java SE Development Kit 8, обновление 211, примечания к выпуску» . www.oracle.com . Проверено 16 апреля 2019 .
- ^ a b «Java SE Development Kit 8, обновление 212, примечания к выпуску» . www.oracle.com . Проверено 16 апреля 2019 .
- ^ «Java SE Development Kit 8, обновление 221, примечания к выпуску» . www.oracle.com . Проверено 30 июля 2019 .
- ^ «Java SE Development Kit 8, обновление 231, примечания к выпуску» . www.oracle.com . Проверено 16 октября 2019 .
- ^ «Java SE Development Kit 8, обновление 241, примечания к выпуску» . www.oracle.com . Проверено 18 января 2020 .
- ^ «Java SE Development Kit 8, обновление 251, примечания к выпуску» . www.oracle.com . Проверено 14 апреля 2020 .
- ^ «Java SE Development Kit 8, обновление 261, примечания к выпуску» . www.oracle.com . Проверено 14 июля 2020 .
- ^ «Java SE Development Kit 8, обновление 271, примечания к выпуску» . www.oracle.com . Проверено 10 октября 2020 .
- ^ «Java SE Development Kit 8, обновление 281, примечания к выпуску» . www.oracle.com . Проверено 25 января 2021 .
- ^ «Java SE Development Kit 8, обновление 291, примечания к выпуску» . www.oracle.com . Проверено 20 апреля 2021 .
- ^ "JDK 9" . Проверено 16 июня 2017 .
- ^ «Спецификация модульности Java против Red Hat, IBM отклонена» . InfoWorld . 2017-05-09 . Проверено 16 июня 2017 .
- ^ Chirgwin, Ричард (2 июля 2017). «Релиз Java 9 снова в нужном русле, сообщество голосует« за » » . tweet_btn () . Проверено 29 июля 2017 .
- ^ "Java Platform, Standard Edition Oracle JDK 9 Migration Guide" . docs.oracle.com . Проверено 15 мая 2018 .
- ^ «OpenJDK: Проект Кулла» .
- Рианна Ли, Дуг (15 января 2015 г.). «[интерес-параллелизм] jdk9 Кандидатские классы Flow и Submission Publisher» .
- ^ «Поток (Java SE 9 и JDK 9)» . docs.oracle.com .
- ^ Реактивные потоки выпускают первую стабильную версию для JVM
- ^ «JDK 9: Первый релиз-кандидат» . 2017-08-09 . Проверено 21 августа 2017 .
- ^ «Java 9: Дата выпуска и новые функции» . techworld.com. 2017-07-21 . Проверено 16 сентября 2017 .
«JDK 9» . Корпорация Oracle . Проверено 16 сентября 2017 . - ^ «Отметьте свой календарь: у Java 9 наконец-то есть дата выпуска» . 2015-05-07.
- ^ "Новый сборщик мусора Java 9: что меняется? Что остается?" . 26 июня 2015 г.
- ^ «JavaOne: JavaFX 2, Java на iOS» .
- ^ «Java 9 Release Date Now March 2017» . 2016-01-05.
- ^ «Релиз JDK 9 отложен еще на четыре месяца» . Реестр . Проверено 14 октября 2016 .
- ^ «Примечания к выпуску Java Development Kit 9» . oracle.com. 21 сентября 2017 . Проверено 3 октября 2017 года .
- ^ «Примечания к выпуску JDK 9.0.1» . oracle.com. 2017-10-17 . Проверено 19 октября 2017 .
- ^ «Примечания к выпуску JDK 9.0.4» . oracle.com. 2018-01-16 . Проверено 16 января 2018 .
- ^ OpenJDK. «JDK 10» .
- ^ «Примечания к выпуску JDK 10» . oracle.com. 2018-03-20 . Проверено 20 марта 2018 .
- ^ «Примечания к выпуску JDK 10.0.1» . oracle.com. 2018-04-17 . Проверено 17 апреля 2018 .
- ^ «Исправления ошибок JDK 10.0.1» . oracle.com. 2018-04-17 . Проверено 17 апреля 2018 .
- ^ «Примечания к выпуску JDK 10.0.2» . oracle.com. 2018-07-17 . Проверено 16 апреля 2019 .
- ^ «Исправления ошибок JDK 10.0.2» . oracle.com. 2018-07-17 . Проверено 16 апреля 2019 .
- ^ OpenJDK. «JDK 11» .
- ^ "Руководство по миграции Oracle JDK" . Справочный центр Oracle . Проверено 27 сентября 2018 года .
- ^ "JDK 11" . openjdk.java.net. 2018-09-25 . Проверено 13 ноября 2018 .
- ^ «Примечания к выпуску JDK 11.0.1» . oracle.com. 2018-10-16 . Проверено 13 ноября 2018 .
- ^ «Примечания к выпуску JDK 11.0.2» . oracle.com. 2019-01-15 . Проверено 16 января 2019 .
- ^ «Примечания к выпуску JDK 11.0.3» . oracle.com. 2019-04-16 . Проверено 16 апреля 2019 .
- ^ «Примечания к выпуску JDK 11.0.4» . oracle.com. 2019-07-16 . Проверено 30 июля 2019 .
- ^ «Примечания к выпуску JDK 11.0.5» . oracle.com. 2019-10-15 . Проверено 16 октября 2019 .
- ^ «Примечания к выпуску JDK 11.0.6» . oracle.com. 2020-01-14 . Проверено 18 января 2020 .
- ^ «Примечания к выпуску JDK 11.0.7» . oracle.com. 2020-04-14 . Проверено 14 апреля 2020 .
- ^ «Примечания к выпуску JDK 11.0.8» . oracle.com . 2020-07-14 . Проверено 14 июля 2020 .
- ^ «Примечания к выпуску JDK 11.0.9» . oracle.com . 2020-10-20 . Проверено 3 ноября 2020 .
- ^ «Примечания к выпуску JDK 11.0.10» . oracle.com . 2021-01-19 . Источник 2021-01-20 .
- ^ «Примечания к выпуску JDK 11.0.11» . oracle.com . 2021-04-20 . Проверено 20 апреля 2021 .
- ^ OpenJDK. «12» .
- ^ «Примечания к выпуску JDK 12» . openjdk.java.net. 2019-03-19 . Проверено 19 марта 2019 .
- ^ «Примечания к выпуску JDK 12.0.1» . openjdk.java.net. 2019-04-16 . Проверено 16 апреля 2019 .
- ^ «Примечания к выпуску JDK 12.0.2» . openjdk.java.net. 2019-07-16 . Проверено 8 февраля 2021 .
- ^ oracle.com, Марк Рейнхолд в (17 сентября 2019 г.). «Java 13 / JDK 13: общедоступный» .
- ^ "JDK 13" . openjdk.java.net. 2019-09-17 . Проверено 17 сентября 2019 .
- ^ «Примечания к выпуску JDK 13.0.1» . oracle.com. 2019-10-15 . Проверено 16 октября 2019 .
- ^ «Примечания к выпуску Java SE Development Kit 13, 13.0.2» . www.oracle.com . Проверено 15 января 2020 .
- ^ oracle.com, Марк Рейнхолд в (17 марта 2020 г.). «Java 14 / JDK 14: общедоступный» .
- ^ "JDK 14" . openjdk.java.net. 2020-03-17 . Проверено 1 апреля 2020 .
- ^ «Примечания к выпуску Java SE Development Kit 14, 14.0.1» . www.oracle.com . Проверено 14 апреля 2020 .
- ^ «Примечания к выпуску Java SE Development Kit 14, 14.0.2» . www.oracle.com . Проверено 23 июля 2020 .
- ^ Гэвин Бирман; Брайан Гетц (сентябрь 2018 г.). «Сопоставление с образцом для Java» . cr.openjdk.java.net . Проверено 28 апреля 2021 .
- ^ "JDK 15" . openjdk.java.net. 2020-09-15 . Проверено 16 сентября 2020 .
- ^ «Примечания к выпуску JDK 15.0.1» . www.oracle.com. 2020-10-20 . Проверено 21 октября 2020 .
- ^ «Примечания к выпуску JDK 15.0.2» . www.oracle.com. 2021-01-19 . Проверено 25 января 2021 .
- ^ "[JDK-8255616] Удаление экспериментальных функций AOT и Graal JIT - Java Bug System" . bugs.openjdk.java.net . Источник 2021-02-19 .
- ^ "JDK 16" . openjdk.java.net . Источник 2021-02-19 .
- ^ «Примечания к выпуску JDK 16.0.1» . Oracle. 2021-04-20 . Проверено 28 апреля 2021 .
- ^ "JDK 17" . openjdk.java.net . 2020-12-23 . Проверено 30 декабря 2020 .
- ^ "JDK 17" . openjdk.java.net . 2021-02-24 . Проверено 27 февраля 2021 .
- ^ «Загрузки - Обзор» . 18 июля 2016 г.
Внешние ссылки [ править ]
- Официальные загрузки Java SE
- Ранняя история Java
- Полный список изменений для J2SE 1.3
- Полный список изменений для J2SE 1.4
- Полный список изменений для J2SE 5.0
- Полный список изменений для Java SE 6
- Сайт разработки Mustang для Java SE 6
- Заметки о выпуске Java SE 7
- Поддерживаемые версии Sun Java и EOL
- Архив загрузок для более старой версии Java