Что нового в Java 17

Осенью 2021 года вышла новая версия языка Java. Нововведения, вошедшие в Java 16 я уже описывал. Также рекомендую ознакомиться с учебником Java.

В Java 17 можно выделить следующие основные изменения, о которых нам точно необходимо знать:

Полный список всех изменений размещён на https://openjdk.java.net/projects/jdk/17/.

Восстановление всегда строгой семантики для чисел с плавающей точкой

В самых первых версиях Java была строгая семантика выполнения операций над числами с плавающей точкой. Однако в Java 1.2 от подобной логики по умолчанию отказались, но было введено ключевое слово strictfp, с помощью которого можно было его использовать там где нужно.

Начиная с Java 17 ключевое слово strictfp устарело, а логика операций над числами с плавающей точкой по умолчанию работает так, как бы она работала до Java 17 со strictfp.

Запечатанные классы

Окончательно вошли в состав Java в том виде, в каком были в Java 16.

SecurityManager помечен как подлежащий удалению

SecurityManager использовался для Java-апплетов, которые давно устарели и не работают ни в одном из браузеров, а также в серверах приложений Apache Tomcat, WebSphere и подобных, в которые уже тоже никто не деплоит разные приложения на один сервер приложений. Времена изменились.

Applet API помечен как подлежащий удалению

Applet API было помечено устаревшим ещё в Java 9, в Java 17 оно отмечено как подлежащее окончательному удалению. В этом, на самом деле, нет ничего страшного, так как ни один современный браузер уже не поддерживает плагин для Java-апплетов.

Порт под macOS/AArch64

OpenJDK был портирован на AArch64 для поддержки Apple M1.

Добавить комментарий

Ваш адрес email не будет опубликован.