Это прямо не говорит о том, что числа не могут быть использованы, хотя по пропускам вы можете видеть, что это не рекомендуется.
Я, конечно, не прочитал бы Руководство по стилю Javaсюда.И, судя по многочисленным примерам в библиотеках классов Java, они тоже этого не делают.
Полагаю, единственное предостережение заключается в том, что JSG рекомендует использовать значимых имен.И следствие состоит в том, что вы должны использовать числа в идентификаторах только тогда, когда они имеют смысловой смысл.Хорошие примеры:
- "3D",
- "i18n" (== интернационализация),
- "2020" (год), * 1016 *
- «X509» (стандарт) и так далее.
Даже "int2Real" имеет смысл по-народному.
ОБНОВЛЕНИЕ
@ biziclomp поднял случай LayoutManager2
и утверждает, что 2
не несет никакого значения.
Вот что говорит Javadoc о назначении этого интерфейса:
Это минимальное расширение LayoutManager
предназначенодля поставщиков инструментов, которые хотят создавать макеты на основе ограничений.Он пока не обеспечивает полную общую поддержку пользовательских менеджеров макетов на основе ограничений.
Исходя из этого, я бы сказал, что 2
в имени имеет значение .По сути, это говорит о том, что вы можете рассматривать это как преемник LayoutManager
.Я думаю, это можно было бы сказать словами, но посмотрите на приведенные выше примеры того, как числа, в которых числа используются как сокращенные.
@ BlueRaja пишет:
2 неОбъясните что-нибудь - чем LayoutManager2 отличается от LayoutManager?
Совет руководства по стилю НЕ в том, что имена должны объяснять вещи .Скорее, он советует, что они должны быть значимыми.(Объяснение см. В javadoc.) Очевидно, что значимость относительна, но существует практический предел количества информации, которое вы можете поместить в идентификатор, прежде чем он станет трудным для чтения и трудным для ввода.
Я полагаю, что идентификатор должен напоминать читателю, что означает предмет (класс, поле, метод и т. Д.), Который назван.
Это компромисс.