Профиль: Аноним (вход | регистрация) неRU opennet.me  
The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

Проект Valhalla будет включён в основную ветку JDK

01.08.2026 21:42 (MSK)

Лоис Фолтан (Lois Foltan) из компании Oracle подтвердила, что реализация предложения JEP 401 ("Value Classes and Objects") будет интегрирована в основной репозиторий OpenJDK и запланирована для включение в релиз JDK 28, намеченный на март 2027 года, в качестве отключённой по умолчанию экспериментальной функции.

Ключевая идея проекта Valhalla: "код как класс, работает как int". Проектом водится понятие классов значений (Value classes), позволяющих создавать типы, которые:

  • не имеют идентичности (в отличие от обычных объектов, два экземпляра с одинаковыми полями считаются равными).
  • не могут быть синхронизированы (synchronized вызывает IdentityException).
  • могут быть скаляризованы (разложены на поля без выделения памяти) или выровнены в массивах и полях (данные хранятся плотно и последовательно).

Синтаксис подразумевает использование нового ключевого слова "value":


   value class Point {
       final int x;
       final int y;
       Point(int x, int y) { this.x = x; this.y = y; }
   }

В данном примере "Point[]" теперь может хранить значения напрямую, а не ссылки на объекты.

  1. Главная ссылка к новости (https://www.jvm-weekly.com/p/p...)
  2. OpenNews: Выпуск Java SE 26 и OpenJDK 26. Проект по интеграции поддержки JavaScript и Python в JVM
  3. OpenNews: Выпуск Java SE 25 LTS и OpenJDK 25
  4. OpenNews: Доступна платформа Jakarta EE 11, продолжающая развитие Java EE
  5. OpenNews: Выпуск Java SE 24 и OpenJDK 24
Автор новости: Аноним
Лицензия: CC BY 3.0
Короткая ссылка: https://opennet.ru/66010-java
Ключевые слова: java, jdk
При перепечатке указание ссылки на opennet.ru обязательно


Обсуждение (26) Ajax | 1 уровень | Линейный | +/- | Раскрыть всё | RSS
  • 1.2, Аноним (2), 21:46, 01/08/2026 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    круто.
     
     
  • 2.14, Аноним (14), 23:25, 01/08/2026 [^] [^^] [^^^] [ответить]  
  • +/
    Только а зачем, если на уровне компилятора можно было отлавливать все что можно оптимизировать и обрабатывать под капотом? А для валидаций в java и без этого много инструментов.
     
  • 2.19, Аноним (19), 23:48, 01/08/2026 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Они изобрели паскалевский record!
     

  • 1.3, Аноним (3), 21:52, 01/08/2026 [ответить] [﹢﹢﹢] [ · · · ]  
  • +3 +/
    fyi 12 лет разрабатывают.
     
     
  • 2.7, Dzen Python (ok), 22:03, 01/08/2026 [^] [^^] [^^^] [ответить]  
  • +5 +/
    Ну, зато достаточно стабильно для прода
     

  • 1.4, trolleybus (ok), 21:53, 01/08/2026 [ответить] [﹢﹢﹢] [ · · · ]  
  • +4 +/
    Создатели явы изобрели структуры... Скоро перегрузку операторофф придумают
     
     
  • 2.6, Аноним (6), 22:02, 01/08/2026 [^] [^^] [^^^] [ответить]  
  • +/
    Не изобрели. Point из трёх интов будет ссылкой
     
     
  • 3.16, Аноним (16), 23:33, 01/08/2026 [^] [^^] [^^^] [ответить]  
  • +/
    и плевать, что прямо в новости написано "В данном примере "Point[]" теперь может хранить значения напрямую, а не ссылки на объекты. "
     
     
  • 4.24, Аноним (6), 01:30, 02/08/2026 [^] [^^] [^^^] [ответить]  
  • +/
    Поинт из двух тестов да, а из трёх - нет. Атомарность при изменении объекта в джаве ломать не будут.
     
     
  • 5.25, Аноним (6), 01:30, 02/08/2026 [^] [^^] [^^^] [ответить]  
  • +/
    Интов, а не тестов, блин.
     
  • 3.18, penetrator (?), 23:41, 01/08/2026 [^] [^^] [^^^] [ответить]  
  • +/
    > В данном примере "Point[]" теперь может хранить значения напрямую, а не ссылки на объекты.
     
     
  • 4.27, Аноним (6), 02:34, 02/08/2026 [^] [^^] [^^^] [ответить]  
  • +/
    В данном да
    https://openjdk.org/jeps/401
    >Reference flattening must maintain the integrity of data. A flattened reference must always be read and written atomically, or it could become corrupted. On common hardware architectures, this limits the size of mutable fields that store flattened references to no more than 64 bits.
     
  • 2.8, Dzen Python (ok), 22:04, 01/08/2026 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Украли у 1С, ужас
     
     
  • 3.10, Аноним (10), 22:33, 01/08/2026 [^] [^^] [^^^] [ответить]  
  • +1 +/
    а те к бэсика с паскалем, получается что тое у бэсика с паскалем
     

  • 1.5, slavanap (?), 21:56, 01/08/2026 [ответить] [﹢﹢﹢] [ · · · ]  
  • +4 +/
    Добро пожаловать к C# struct.
     
     
  • 2.20, Brian (?), 23:52, 01/08/2026 [^] [^^] [^^^] [ответить]  
  • +/
    Только как обычно в Java этим без слоя гов/del ломбока пользоваться невозможно будет, за нормальным апи придется опять в котлен идти
     

  • 1.9, _ (??), 22:09, 01/08/2026 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    Имитация жизни.
     
  • 1.15, Аноним (15), 23:27, 01/08/2026 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    ну вот и нормальная реализация потихоньку выходит на сцену. не корявая наколенка типа сишарп стракт. всётаки джава оперирует баблом всего мира
     
     
  • 2.28, Илья (??), 02:37, 02/08/2026 [^] [^^] [^^^] [ответить]  
  • +/
    >  не корявая наколенка типа сишарп стракт

    скорее наоборот. в дотнете виртуальная машина планировалась под структутры и дженерики, и там всё это уже лет 20 есть

     

  • 1.17, zionist (ok), 23:41, 01/08/2026 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Теперь вместо раздувания по heap памяти получим раздувание по CPU и по стеку. Когда миллионы жабодевелоперов с непривычки начнут передавать value слассы куда угодно, то есть станут приумнажать копирование данных.
     
  • 1.21, Аноним (21), 00:03, 02/08/2026 [ответить] [﹢﹢﹢] [ · · · ]  
  • +2 +/
    Тот самый момент, когда ребята, которые хвалились какие у них классные интерпретируемые/VM-языки, начинают заново изобретать велосипед, т.е. простые типы из компилируемых языков. Ибо так тупо оптимальнее.
     
  • 1.22, Аноним (22), 00:43, 02/08/2026 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    В оракле только пока ещё видимо не поняли что ничегл кроме раста не нужно. Всё, что сейчач написано на жаве может быть написано на расте и работать сильно лучше.
     
     
  • 2.23, Аноним (19), 01:10, 02/08/2026 [^] [^^] [^^^] [ответить]  
  • +/
    Ну это как советовать перейти с мяса на колбасу.
     
  • 2.26, Аноним (15), 02:00, 02/08/2026 [^] [^^] [^^^] [ответить]  
  • +/
    помнится судо на раст аккуратно переписывали и выявилась куча багов.
     
  • 2.30, Аноним (30), 02:52, 02/08/2026 [^] [^^] [^^^] [ответить]  
  • +/
    Джава гораздо безопаснее раста.
     

  • 1.29, Илья (??), 02:48, 02/08/2026 Скрыто ботом-модератором [﹢﹢﹢] [ · · · ]     [к модератору]
  • +/
     

     Добавить комментарий
    Имя:
    E-Mail:
    Текст:



    Партнёры:
    PostgresPro
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2026 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру