JDK 23: новые возможности Java 23

Java Development Kit (JDK) 23, следующая запланированная версия стандартного Java, уже запущена, и в релизе запланированы две функции.

В JDK 23, который выйдет 19 сентября, добавлена вторая предварительная версия API для работы с файлами классов, обеспечивающая стандартный API для разбора, генерации и преобразования файлов классов Java. Ранее эта функция была представлена в JDK 22, который был выпущен 19 марта. Ранее в JDK 23 была запланирована предварительная версия примитивных типов в паттернах, instanceof и switch.

API для работы с файлами классов призван обеспечить API для обработки файлов классов, который отслеживает формат файлов классов, определенный спецификацией Java Virtual Machine. Он также позволит компонентам JDK перейти на стандартный API и в конечном итоге удалить внутреннюю копию библиотеки ASM стороннего производителя. API для файлов классов добавит усовершенствования, включая оптимизацию класса CodeBuilder, который имеет фабричные методы для инструкций байткода, включая низкоуровневые фабрики, фабрики среднего уровня и высокоуровневые сборщики для базовых блоков.

В JDK 23 разработчики Java удалили методы среднего уровня, которые дублировали методы низкого уровня или редко использовались, а оставшиеся методы среднего уровня переименовали, чтобы повысить удобство использования. Они также доработали модель класса ClassSignature, которая была улучшена для более точного моделирования общих сигнатур суперклассов и суперинтерфейсов. Согласно предложению OpenJDK, лежащему в основе этой функции, платформа Java должна определить и реализовать стандартный API класс-файлов, который будет развиваться вместе с форматом класс-файлов, который может меняться каждые шесть месяцев.

Ранее упоминалось о включении в JDK 23 еще одной функции предварительного просмотра - примитивных типов в шаблонах, instanceof и switch. Эта функция улучшит сопоставление шаблонов, позволив использовать шаблоны примитивных типов во всех контекстах шаблонов, а также расширит возможности instanceof и switch для работы со всеми примитивными типами. Цели включают разрешение шаблонов типов для всех типов (примитивных или ссылочных), разрешение шаблонов примитивных типов во вложенных контекстах и контекстах верхнего уровня, а также предоставление простых в использовании конструкций, которые устраняют риск потери информации из-за небезопасного приведения. Другие цели включают согласование типов шаблонов с instanceof, согласование instanceof с безопасным приведением и разрешение switch обрабатывать значения любого примитивного типа.

Ряд других функций, представленных в JDK 22, могут попасть в JDK 23. К ним относятся утверждения перед super(...), которые предоставят разработчикам большую свободу в выражении поведения конструктора; шаблоны строк, которые упростят выражение строк, включающих значения, вычисляемые во время выполнения; сборщики потоков, которые сделают конвейеры потоков более гибкими и выразительными; скопированные значения, которые позволят совместно использовать неизменяемые данные внутри и между потоками; и неявно объявленные классы и основные методы экземпляра, которые облегчат начинающим программистам написание программ без необходимости понимать особенности языка, предназначенные для больших программ.

Векторный API, который будет выражать векторные вычисления, надежно компилируемые во время выполнения в оптимальные векторные инструкции на поддерживаемых архитектурах, - еще одна потенциальная возможность в JDK 23. В JDK 22 векторный API находился на стадии седьмого инкубатора. Создание производных записей и предложение по созданию кучи горячего кода, которые сократят время выполнения приложений, также являются возможными.

Разработчик Java компания Oracle также раскрыла планы по развитию Java в 2024 году. Oracle рассказала об улучшениях, связанных с проектами OpenJDK, начиная с Amber, предназначенного для разработки небольших функций, ориентированных на производительность, и Babylon, предназначенного для расширения Java на иностранные модели программирования, такие как GPU, и Valhalla, предназначенного для дополнения объектной модели Java объектами значений, чтобы устранить давние узкие места в производительности.

JDK 23: новые возможности Java 23
Понравилась новость? Тогда не забудь оставить свой комментарий.
А так же, добавь наш сайт в закладки (нажми Ctrl+D), не теряй нас.
02 апреля 2024 г.
61
Теги: Java , Oracle , API , JDK

Комментарии

Оставить комментарий:
* отправляя форму, я даю согласие на обработку персональных данных

Читайте еще

Продолжаем добавлять языки программирования для Вас.
Впереди много интересного!

Только свежие новости программирования и технологий каждый день.

Свежие посты