Вышла Java 22

26.03.2024      966

Выпущена общедоступная версия JDK 22, построенная на эталонной реализации Java SE.

Готовые к использованию дистрибутивы под лицензией GPL уже доступны в рамках открытого проекта OpenJDK.


Особенности релиза

Java SE 22 сохраняет обратную совместимость с прошлыми релизами платформы, что позволит поддерживать работоспособность написанных ранее проектов под предыдущую версию.

Срок поддержи – полгода, обновления будут выходить до выпуска следующего релиза. Если необходим длительный срок поддержки (LTS), то следует использовать Java SE 21 или Java SE 17, которые будут получать обновления до 2031 и 2029 годов соответственно.


Ключевые нововведения

В язык Java добавлена возможность использовать безымянные переменные и паттерны. При объявлении в коде переменных, необходимых для вызова функции, но неиспользуемых в дальнейшем, теперь допустимо указывать символ «_». Такой же подход применим для неиспользуемых вложенных паттернов, переменных паттернов и параметров лямбда-выражений. Использование символа подчёркивания делает код короче и читабельнее, явно обозначает намерения автора и уменьшает пространство для допущения ошибок. Также оно помогает инструментам статического анализа, которые могут жаловаться на неиспользуемые переменные.

Добавлена возможность запускать программы, состоящие из нескольких исходных файлов, без отдельного шага компиляции – командой вида java Prog.java. Это может пригодиться для быстрого прототипирования или на ранних стадиях разработки, когда нет времени на настройку сборки проекта, а хочется сразу приступить к написанию кода, не ограничиваясь при этом одним исходным файлом.


Изменения в режиме Preview

В режиме Preview реализованы строковые шаблоны, позволяющие совмещать в одной строке текст и вычисления без применения оператора «+». Добавление выражений в переменную происходит через конструкцию \{..}. В упрощенном виде такие шаблоны можно использовать как аналог строковой интерполяции, которая уже давно есть во многих языках программирования. Однако в случае Java при компоновке результата могут быть задействованы дополнительные препроцессоры, проверяющие корректность значения, что позволяет реализовать с помощью шаблонов форматированные строки, объекты JSON или даже запросы к SQL.

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

Также для режима Preview в конструкторах выражений стало возможно указывать функцию super(), которая используется для явного вызова конструктора родительского класса из наследуемого, если на выражение нет ссылки в создаваемом экземпляре класса.

И появилась возможность использовать неявно объявленные классы – у которых метод main() не является public static и не имеет параметра String[] args или вообще нет объявленного класса. Возможность упростит написание коротких программ и скриптов, а также облегчит процесс обучения языку для новичков, перекладывая детали реализации на плечи самой виртуальной машины.


Улучшение производительности

Переработан механизм работы сборщика мусора G1 при получении объектов Java по прямым указателям для безопасной передачи ссылок нативному коду на C или C++. Ранее в таких операциях процесс сборки мусора по умолчанию отключался до момента освобождения указателя, что приводило к длительным паузам и нехватке памяти при фактическом ее избытке. Теперь добавлена фиксация в памяти расположения критических регионов JNI с задействованными в коде Java-объектами, что позволяет безопасно взаимодействовать с нативным кодом без отключения сборки мусора.

Также для сборщика мусора Parallel GK повышена производительность работы с большими объектами – теперь каждый рабочий поток работает с объектом независимо и только в пределах своей полосы.


Автор:
Аналитик


См. также

Новость ИТ-Новость Кадры

Согласно прогнозу Министерства труда, к 2029 году потребность бизнеса в руководителях значительно снизится, а в высококвалифицированных специалистах возрастет. Также ведомство отметило, в каких сферах труда в целом уменьшится и повысится спрос на кадры.

15.07.2024    604    AnastasiaKl    0       

2

Новость ИТ-Новость Отчетность

С 15 июля 2024 года отчет о движении финансов по зарубежным счетам ИП-резидентов и ЮЛ-резидентов нужно будет сдавать в новом формате. Предыдущие форматы из писем ФНС утратят актуальность.

21.06.2024    796    user1915669    0       

2

Новость Налог на прибыль УСН ИТ-Новость Налоги

С 1 января 2025 года ожидаются важные изменения по налогам для бизнеса: прибыли и НДПИ. А также изменятся правила применения УСН. Законопроект Минфина уже одобрен Правительством РФ и передан в Госдуму.

03.06.2024    1144    user1915669    0       

1

Новость ИТ-Новость

Глава правительства Михаил Мишустин и гендиректор «РЖД» Олег Белозеров обсудили, как идет переход на 1С одного из крупнейших российских пользователей 1С:ERP. Критически важные возможности системы уже реализованы. Полный переход намечен на 2028 год.

22.05.2024    4372    ЕленаЧерепнева    9       

5

Новость УСН ИТ-льготы ИТ-Новость

Минфин ответил на вопрос, какие льготы по взносам может получить ИТ-предприятие на УСН с собственным программный продуктом, если оно зарегистрировано в начале 2024 года.

21.05.2024    1142    user1915669    0       

1

Новость ИТ-Новость Образование

Фирма «1С» приглашает преподавателей среднего профессионального и высшего образования, а также учителей основного общего образования на бесплатное обучение по программе «Легкий старт». Обучение проводится в дистанционном формате.

17.05.2024    1269    ЕленаЧерепнева    0       

2

Новость Платформа 1С v8.3 Зазеркалье ИТ-Новость

Фирма «1С» предупредила, что при автообновлении тонкого клиента 1С с веб-сервера на некоторых старых версиях операционных систем Microsoft Windows может быть выведена надпись: «Не обнаружена цифровая подпись программы доступа».

15.05.2024    1535    ЕленаЧерепнева    0       

2

Новость ИТ-Новость Маркировка

С 1 июля 2024 года России может начаться маркировка некоторых товаров бакалеи. Пока экспериментально – участие производителей и продавцов бакалейной продукции по желанию.

07.05.2024    1505    user1915669    0       

1
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
Оставьте свое сообщение