Java предоставляет два разных механизма импорта для доступа к классам и их членам: статические импорты и обычные импорты. Каждый служит своей цели и имеет конкретные случаи применения.
Оператор import com.test.Fooclass; — это стандартный импорт класса. Такой подход позволяет тебе:
Пример использования:
Fooclass.staticMethod();
Fooclass.staticField;
Оператор import static com.test.Fooclass; — это статический импорт. Эта продвинутая возможность позволяет тебе:
Пример использования:
staticMethod();
staticField;
| Аспект | Обычный импорт | Статический импорт |
|---|---|---|
| Что импортируется | Сам класс | Только статические члены |
| Необходимый префикс | Нужно имя класса | Префикс не требуется |
| Когда использовать | Создание экземпляров; общий доступ к классу | Часто используемые статические утилиты |
Используй статические импорты с осторожностью и только когда это улучшает читаемость кода. Чрезмерное использование статических импортов может сделать непонятным, откуда берутся методы, что снижает поддерживаемость кода. Статические импорты наиболее уместны для утилит вроде Math.sqrt() или методов проверки вроде assertEquals().
Обычный import com.test.Fooclass; позволяет использовать имя класса в качестве префикса для вызова статических методов, в то время как статический импорт import static com.test.Fooclass; избавляет от необходимости в этом префиксе.
Новый — ещё не проверен сообществом
Вы