Правильное использование статического импорта в Java

Возможный дубликат:
Каков хороший вариант использования для статического импорта методов?

Я редко когда-либо вижу статический импорт в Java, как это:

import static java.lang.Math.*;

Тогда вы могли бы получить доступ PI без необходимости звонить Math.PI,

Поскольку вы не видите это так часто, значит ли это, что это плохой дизайн?

5 ответов

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

Опять же, если вы используете много констант из одного и того же класса, и очевидно, откуда они берутся, вам лучше использовать групповой импорт.

Иногда да. Когда вы используете статический импорт, поля и методы из класса, который вы статически импортировали, могут "выглядеть так", как будто они из вашего класса.

Это влияет на понятность, ИМХО.

Тем не менее, я использую его все время в тестах JUnit!

Это не плохой дизайн, но на мой взгляд Math.PI яснее для обслуживания, чем просто PI,

Это не плохо. Это просто обычно не нужно. Я лично использую его всякий раз, когда моя программа использует много вызовов java.lang.Math,

Большинство людей также не знают об этом, так как он так редко используется. То же самое относится и к другим конструкциям, таким как статические.

Математика была раньше import static именно поэтому большинство разработчиков склонны использовать старую форму.

Другие вопросы по тегам