JEP 511: Импорт модулей в Java 25 — как упростить работу с библиотеками

от автора

Команда Spring АйО проанализировала JEP 511: импорт модулей. Теперь можно будет одним импортом подключать все пакеты, которые экспортирует модуль. Это сильно упростит работу с большими библиотеками, особенно в прототипах и обучении.

В чем проблема?

Например, чтобы работать с потоками, коллекциями и функциями, раньше приходилось писать кучу импортов:

import java.util.*; import java.util.function.*; import java.util.stream.*;

Теперь можно будет написать:

import module java.base;

И все нужные классы из java.util, java.util.stream и других будут доступны сразу.

Зачем это нужно?

  • Быстрее подключать модули целиком без перечисления всех пакетов.

  • Удобно для прототипов, скриптов и JShell.

  • Упрощает жизнь новичкам — не нужно вспоминать, где в иерархии пакетов живет List или Stream.

Пример:

import module java.sql;  public class Demo {     public static void main(String[] args) throws Exception {         Connection conn = DriverManager.getConnection("jdbc:h2:mem:");         Statement stmt = conn.createStatement();         stmt.execute("create table test(id int)");         System.out.println("Таблица создана");     } }

Благодаря import module java.sql; доступны все классы из java.sql и javax.sql сразу.

Как это работает?

import module M; — подключает все публичные классы и интерфейсы из экспортируемых пакетов модуля M.

Также подключаются пакеты из модулей, от которых M зависит транзитивно.

Важно:

Это работает даже в обычных (не модульных) проектах.

Если в разных модулях встречаются классы с одинаковыми именами, компилятор сообщит об ошибке. В этом случае можно уточнить импорт:

import java.sql.Date; // Уточнение, какой именно класс Date использовать

Java постоянно расширяется, и стандартные библиотеки становятся все объемнее. import module — это способ сделать работу с ними проще и быстрее, без потери совместимости.

Что думаете о новой фиче? Предлагаем обсудить комментариях👇


Присоединяйтесь к русскоязычному сообществу разработчиков на Spring Boot в телеграм — Spring АйО, чтобы быть в курсе последних новостей из мира разработки на Spring Boot и всего, что с ним связано


ссылка на оригинал статьи https://habr.com/ru/articles/933476/


Комментарии

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

Ваш адрес email не будет опубликован. Обязательные поля помечены *