Главная » Java » Именованные константы

0

Константами называются фиксированные значения — например, 12, 17.9 или “String like this”. С их помощью можно работать с величинами, которые не вычисляются заново, а остаются постоянными во всем жизненном цикле программы.

Программисты предпочитают иметь дело с именованными константами по двум причинам. Первая из них заключается в том, что имя константы представляет собой некоторую форму документации. Оно может (и должно!) описывать, для чего используется то или иное значение.

Другая причина в том, что именованная константа определяется всего в одном месте программы. Когда ее значение понадобится изменить, это достаточно будет сделать в одном месте, что заметно упрощает модификацию программы. Чтобы создать именованную константу в Java, следует указать в ее объявлении ключевые слова static и final и задать начальное значение:

class CircleStuff {

static final double p = 3.1416;

}

Если вдруг окажется, что точности в четыре цифры после десятичной точки недостаточно, значение p легко изменить. Мы объявили p как переменную типа double — 64-разрядное число с плавающей точкой с двойной точностью, так что p можно задать и поточнее — скажем, 3.14159265358979323846.

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

class Suit {

final static int CLUBS  = 1; final static int DIAMONDS = 2; final static int HEARTS  = 3; final static int SPADES  = 4;

};

При такой группировке на масти можно ссылаться как на Suit.HEARTS, Suit.SPADES и т. д. — все названия мастей сосредоточены в пределах одного класса Suit.

1.4.1. Символы Unicode

Давайте ненадолго остановимся и обратим внимание на символ p, использованный  в качестве имени константы в предыдущем примере. В большинстве языков программирования  идентификаторы  обычно ограничиваются буквами и цифрами, входящими в набор символов ASCII.

Java вводит вас в современный мир интернационального программного обеспечения; в Java используется кодировка Unicode — международный стандарт для набора символов. Символы Unicode состоят из 16 бит, благодаря чему обеспечивается поддержка букв, входящих в большинство языков мира. По-этому мы и смогли использовать p как имя константы в приведенном выше примере. Символ p входит в греческую секцию Unicode и, следовательно, может присутствовать в исходном тексте программы. В настоящее время при программировании,  как правило, используется набор символов ASCII, 7-битная кодировка или ISO-Latin-1 — 8-битный стандарт, который обычно называется Latin-1. Однако перед обработкой эти символы переводятся в Unicode, так что в Java всегда используется кодировка Unicode.

Упражнение 1.5

Измените приложение HelloWorld так, чтобы выводимая строка была представлена именованной константой.

Упражнение 1.6

Измените приложение Fibonacci так, чтобы вместо константы-литерала (50) в условии цикла фигурировала именованная константа.

Источник: Арнольд К., Гослинг Д. – Язык программирования Java (1997)

По теме:

  • Комментарии