Быстрый вопрос о Java о частных статических заключительных ключевых словах для полей

Я объявляю поле:

private static final String filename = "filename.txt";

Во-первых, делает порядок private static final вопрос? В противном случае есть ли принятая последовательность или конвенция стандарта?

Во-вторых, filename в моем приложении фиксируется. Действительно ли это является лучшим, должен был сохранить его значение?

32
задан polygenelubricants 14 May 2010 в 06:25
поделиться

4 ответа

Я использую Checkstyle с Eclipse, что приводит к предупреждению, если объявление находится в порядке, отличном от указанного вами, со ссылкой на спецификацию языка Java (JLS) . Например,

private final static String filename = "filename.txt";

приводит к

'static' modifier out of order with the JLS suggestions.

У них есть эта страница , на которой указан ожидаемый порядок, хотя по ссылкам на этой странице до JLS я не вижу что угодно в поддержку их утверждения о предложенном порядке.

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

49
ответ дан 27 November 2019 в 19:55
поделиться

В Java принято давать константам ( статические конечные значения) имена в верхнем регистре, поэтому я бы написал:

private static final String FILENAME = "filename.txt";

См. Также Соглашения о кодах для языка программирования Java . (Это соглашения о коде Sun, которые использует большинство Java-программистов).

14
ответ дан 27 November 2019 в 19:55
поделиться
  1. Порядок не имеет значения, но вы всегда можете поэкспериментировать с ним - есть только 6 возможностей для тестирования.

  2. Я не знаю ни одного соглашения, хотя я поставил модификатор видимости первым (общедоступный / частный / защищенный), чтобы вы могли взглянуть на него, и он выровнялся.

  3. Если это исправлено, вы можете это сделать, но я всегда думаю, что что-то является константой, только чтобы позже (например, во время тестирования) обнаружить, что я хочу передать это. Аргумент в командной строке или в файле свойств работает в этом случае и требует минимум усилий для настройки.

3
ответ дан 27 November 2019 в 19:55
поделиться
  1. Нет. Но я обычно использую именно такую ​​последовательность.

  2. Это разумный выбор, но некоторые предпочтут файл конфигурации, либо Свойства , либо другой формат файла (например, XML). Таким образом, вы можете изменить имя файла без перекомпиляции.

23
ответ дан 27 November 2019 в 19:55
поделиться
Другие вопросы по тегам:

Похожие вопросы: