Java 15: анонс
Сегодня вышла 15 версия языка, которому посвящён этот канал❤️
В релизе 14 обновлений:
1️⃣ Новый синтаксис — пока в превью фазе:
▫️Текстовые блоки
▫️Sealed classes
▫️Записи ▫️Удобный
instanceof:
if (obj instanceof String str)
можно сразу использовать
str как переменную.
2️⃣ Новое API:
▪️Алгоритм цифровой подписи EdDSA появился в пакете security.
▪️Foreign-Memory Access API: доступ к памяти за пределами Heap.
▪️Скрытые классы:
Большинство фреймворков работают так: помечаете классы аннотациями, фреймворк их находит и создаёт класс-обёртку с дополнительными функциями.
MethodHandles.lookup()
.defineHiddenClass(…)
Создаст класс, который недоступен коду основного приложения.
3️⃣ Обновились классы
DatagramSocket и
MulticastSocket.
4️⃣ В финальную стадию вошли 2 сборщика мусора:
ZGC и
Shenandoah.
Оба сборщика подойдут для приложений с RAM до 4 ТБ, в которых нежелательны долгие паузы на сборку мусора. В новых GC задержка не превысит 2 мс, но среднее время работы чуть увеличится.
5️⃣ Некоторые фичи стали недоступны:
Nashorn JS Engine, Biased Locking, Solaris and SPARC Ports, RMI Activation for Removal
Ответ на вопрос перед постом
Как посчитать, когда версия java будет равна вашему возрасту:
Пусть Age – возраст в 2020
x – количество лет, через которое версия = возраст.
Age + x = 15 + 2*x
x = Age - 15