Какво да очакваме в Java 23
February 15, 2024 04:34 pm

Въпреки че не се очаква да пристигне до септември, Java Development Kit 23 вече получи своята първа функция, подобрение за съвпадение на шаблони.

 

JDK 23 ще последва JDK 22 с шест месеца. JDK 22 трябва да бъде пуснат през март с възможности като предварителни прегледи на структурирана едновременност и шаблони за низове.

 

Страницата OpenJDK за JDK 23 изброява предварителен преглед на примитивни типове в шаблони, instanceof и switch като първа функция, насочена към изданието. Това предложение за подобряване на JDK ще подобри съвпадението на шаблони, като позволи шаблони на примитивни типове във всички контексти на шаблони.

Целите на предложението включват позволяване на еднообразно изследване на данни чрез разрешаване на модели на типове за всички типове, независимо дали са примитивни или референтни; подравняване на шаблони на типове с instanceof и подравняване на instanceof с безопасно кастинг; и позволяване на съпоставянето на шаблони да използва шаблони от тип примитивен шаблон както във вложен контекст, така и в контекст от най-високо ниво. Други цели включват осигуряване на лесни за използване конструкции, които елиминират риска от загуба на информация поради опасни кастинги и позволяват превключване към стойности на процеси от всякакъв примитивен тип.

 

 

Мотивирането на предложението е желанието да се премахнат множество ограничения, отнасящи се до примитивни типове, които „налагат триене“ на разработчиците при използване на съвпадение на шаблони, instanceof и switch. Премахването на тези ограничения ще направи Java по-унифицирана и по-изразителна, се посочва в предложението.

 

Други функции, които вероятно ще бъдат включени в JDK 23, са тези, които се визуализират в JDK 22, като например API за клас файл и шаблони за низове. Oracle публикува нови версии на стандартната Java на всеки шест месеца, през март и септември. Текущата версия на стандартната Java е JDK 21, която беше пусната миналия септември с функции като виртуални нишки и поколение Z събирач на отпадъци.