Найти в Дзене
✅ Гибкие конструкторы
JDK 25 привнесёт ещё одно небольшое, но важное, на мой взгляд, изменение в язык программирования Java - гибкие конструкторы (JEP 513). Цель изменения - позволить выполнять действия в конструкторе класса-наследника до вызова конструктора родительского класса. Представим себе достаточно банальную ситуацию: нам нужно создать экземпляр некоторого класса-наследника, но в процессе создания нужно провалидировать переданные в аргументах данные. До Java 25 сделать это можно только после вызова конструктора...
12 часов назад
Сборщики стримов
Одним из наиболее важных нововведений, на мой взгляд, в стандартной библиотеке в грядущем релизе JDK 25 станут сборщики стримов (JEP 485 Stream Gatherers). Да, стабильными они стали ещё в JDK 24, но для себя я рассматриваю только LTS-релизы. Сборщики стримов описываются типизированным интерфейсом Gatherer<T, A, R>, где T - тип входящего элемента стрима, R - тип выходящего элемента, а A - потенциально изменяемое состояние сборщика. Внутри Gatherer используются четыре компонента: Создать сборщик стрима можно при помощи метода Gatherer...
1 день назад
Переменные с областью действия
Ещё одно интересное нововведение, которое ждёт нас в грядущем релизе JDK 25 — переменные с областью действия. Наверняка многие сталкивались с ситуацией, когда нужно передать какую-то информацию между двумя компонентами, но при этом по каким-то причинам не хочется добавлять новые аргументы в методы или свойства в классы. Зачастую такая задача решалась при помощи ThreadLocal - локальных переменных потока. В одном месте данные добавлялись в локальные переменные потока, а в другом - извлекались. Но у локальных переменных потоков есть свои недостатки и достаточно существенные...
1 день назад
Компактные файлы исходных кодов в JDK 25
С релизом JDK 25, который произойдёт уже на следующей неделе - 16 сентября, стабильными станут компактные файлы исходных кодов и главные методы (JEP 512), которые были в разработке начиная с JDK 21. Все мы знаем, что любая программа, написанная на языке программирования Java, начинает выполнение с класса с main-методом, который в общих чертах имеет следующую форму: class Application { public static void main(String[] args) { System.out.println("Hello world!"); } } И у людей, только начинающих...
6 дней назад
Компактные файлы исходных кодов в Java 25 С релизом JDK 25, который произойдёт уже на следующей неделе - 16 сентября, стабильными станут компактные файлы исходных кодов и главные методы (JEP 512), которые были в разработке начиная с JDK 21. С релизом Java 25 можно будет убрать класс, модификаторы public и static, а так же аргументы. В этом случае class и package будут объявлены неявно. Кроме этого в компактных файлах исходных кодов автоматически импортируются все публичные классы из пакетов, экспортируемых из модуля java.base, что значительно упрощает написание простых программ. Как вам нововведение?
6 дней назад
Если нравится — подпишитесь
Так вы не пропустите новые публикации этого канала